VoIP Drupal port to D7

Events happening in the community are now at Drupal community events on www.drupal.org.
You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!

Let's use this wiki page to discuss what needs to be done in order to convert VoIP Drupal to Drupal 7.

If you are interested in collaborating with this initiative, please get in touch with me.

Thanks,

Leo

04/16/2012 - Ben
The github code (https://github.com/benbunk/voipdrupal/) will no longer be updated. All code will be updated in the d.o repository on the 7.x-1.x branch going forward.

Comments

Hi leo, I am interested in

Fishboy1669's picture

Hi leo,
I am interested in helping with this.

fishboy1669

What's people's thoughts on

Fishboy1669's picture

What's people's thoughts on using the following to convert modules to drupal 7?

http://drupal.org/project/coder
http://boombatower.com/tools/deadwood

I think running the any

ben.bunk's picture

I think running the any module through Coder is an excellent starting point. I'd actually use the coder output as the base to branch from and patch to instead of the latest d6 code.

I'd be happy to help with the

ben.bunk's picture

I'd be happy to help with the conversion.

We're ready to work on a D7 port.

macneib's picture

I can commit two developers to this project for the next month.

Leo and I have exchanged a few emails on the topic and I think he's definitely on the right track with how we should go about this.
If he doesn't mind I'd like to post some extracts for the exchange:

a) list the changes you're planning to implement and the overall timeline for the project
* To achieve a D7 port we have relatively feasible goals:
- We'd like to have D7 functionality all the way into to the voipplivo module by the end of January or early February.
- We'd also like to have the ability to delete scripts from the voip scripts node
- I'd also like to merge all voip related modules into one consistent module heading. We like 'telephony' but Leo raised an excellent point about backward compatibility issues that might stem from that kind of a change. So we'd be more than happy with a 'voip' container. We just want everything under one admin menu.

b) wait until we release the new beta, which will include a bunch of changes in the way voices are handled by the system. The latest dev version already includes most of those changes
- I think it would be wise to wait for the new beta.
- Running the module through coder sounds like a great idea provided that it catches the necessary changes.
- Perhaps it's appropriate now to consolidate any existing roadmaps. That way we can target specific changes to specific version releases.

c) Decide what to do regarding the upcoming release of VoIP Drupal 1.0, which will incorporate a couple of changes in the API and, hopefully, a good chunk of documentation. Should we work in parallel and try to release D7 close to VoIP Drupal 1.0?
* not sure what the way forward is regarding this. IMHO, We should get to D7 asap to maximize it's currency and capture new platform adopters. The Drupal Community seems committed to releasing on Drupal 8 around Summer/Fall 2012 so before then would be great. ;)

What is the most sensible plan and time line for this?

Fishboy1669's picture

Hi macneib,
reading your message makes sense but its a little difficult to understand what the exact plan and timeline would be. I'm new to drupal and therefore have started on version 7 hence the need for voip module for use with this version. Is there any project managment plan for the voip module as I have read the entries on the voip group and also the voip project page but as a nubie can't see how module work to be done is detailed and listed out.

cheers
fishboy1669

I'm following Leo's lead on this.

macneib's picture

Hi fishboy,

As it stands now, I 'could' push to convert the voip drupal beta 7 module for drupal 6 into a voip drupal 7 port.
This wouldn't be such as great idea due to the fact there is about to be another beta release shortly.
I'm not sure when or what it'll be called exactly, perhaps beta 8? That's up to the organizers.

After 'beta 8' is released I'll know what changes have been made to the D6 version and I'll be ready to describe what we want to have in the D7 version.

I agree that if we want to get community development underway properly then we'll have to establish a more open software road map. This is currently not the case as Leo's group handles the majority of the decisions. Which was perfect since they were the only ones working on voip drupal. Going forward, if there is to be a stronger community involvement then they'll have to open up the version goals and let Leo and company choose the priorities. Until then it'll be difficult to front-run development on the D7 port because I don't know what changes are in the current beta 8 pipeline.

Right now it's just wait and see. Great to hear other people are excited to get involved. It's an awesome module.

Re: VoIP Drupal port to D7

leoburd's picture

Hello all,

It's awesome to see so many people willing to help out with the D7 conversion!

Answering the questions presented above:

  • We're planning to release Beta 8 in the next couple of days. The main difference between this version and the previous one lies on the way we handle voices. Most of the changes are already committed to the dev version. Now we're only doing some final testing and fixing some very minor issues. If you are interested, feel free to look at the code to estimate what we'll need to do for D7. macneib, would you mind compiling an initial to do list and, if possible, a timeline for this task?

  • The overall roadmap for VoIP Drupal is described in the diagram included here: http://drupal.org/node/1078790 I'm happy to say that we are almost done with the modules in orange and should be releasing them in the next couple of weeks. Looking at the future (and starting now), we would like to open the platform for increased participation from the community and recruit volunteers to co-maintain the code. If you are interested in any module in particular, please let me know.

  • We don't have to wait for the core to be converted before starting to work on the non-core modules. There's nothing preventing us from creating a to do list for those modules. Once again, if you are interested in any module in particular, please let me know.

  • Regarding the release of VoIP Drupal 1.0, our plan is to open a proposal for everyone to review in the next week or so. For that release, our intention is not necessarily to add more modules to core, but rather to clean-up the existing code and refine the API based on feedback received from the community. Once we freeze the API, then we'll concentrate our efforts into generating good documentation and reporting use cases.

With support from everyone, we don't foresee any major obstacles in this process. It would be awesome if we could launch VD 1.0 by Drupal Con! What do you think?

Leo

I'll get started on a todo list.

macneib's picture

Hi Everyone,

I have a meeting with my group this weekend and we'll cook up a todo list as stated earlier, I'd like to have something ready for review by the end of January.
I don't see the core modules presenting a difficult task though I must admit that I haven't looked too deeply at some of the plug-in modules.
i.e. voip-phone and click2call etc.

I'll post my results by Sunday night.

D7 Gold

niccolox's picture

yep, this is awesome, the D7 ecosystem has reached critical mass imho.

Coder Results First Pass

ben.bunk's picture

I went ahead and ran beta8 through coder standards and then coder upgrade. There's some issues which I'll outline below but here is the github branch with the cleaned and upgraded code: https://github.com/benbunk/voipdrupal (untested)

I don't intend to derail anything @leoburd or @macneib are doing outside of this thread but since I hadn't seen movement I thought that the coder results could provide a general road map. Topics such as built-in APIs, the Libraries module and system, Entities, Fields, and php 5.3 OOP options are not covered in this list.

Coder Manual Review Points:
1. Remove require and include statements where possible and replace with files[] directives in the info files.

  1. Install files have changed quite a bit and need some tough love.

  2. SQL statements need to be reviewed and switched the new query builder format.

  3. hook_perm was switched to hook_permissions and needs review.

  4. Theme hooks switched from argument to variable

  5. Theme Table and pager outputs have changed.

  6. Date Format changed from small to short needs to be reviewed for compatibility.

  7. Huge opportunity to fill in missing function comments

  8. t() - language code handling

  9. Node hooks in general need review

  10. hook_node_info - module variable was changed to base

  11. node_api - node_validate - has changed.

  12. time() switched to REQUEST_TIME --- may or may not impact things.

  13. The following function diff needs review.

    <?php
    @@ -1037,8 +1037,8 @@ function _voiptropo_file_save_upload($source, $validators, $dest) {

      
    // If we made it this far it's safe to record this file in the database.
      
    $file->uid = $user->uid;
    $file->status = FILE_STATUS_TEMPORARY;
    $file->timestamp = time();
    $file->status = ~FILE_STATUS_PERMANENT;
    $file->timestamp = REQUEST_TIME;
      
    drupal_write_record('files', $file);
       return
    $file;
    ?>
  14. Search TODO notes in the code for more items not currently on this list.

nice.

macneib's picture

We're looking at the code now. Thanks.

Updated

ben.bunk's picture

I updated my github branch so you can actually enable the voipdrupal core module now.

Re: Coder Results First Pass

leoburd's picture

Hello ben.bunk,

Thanks so much for putting together the first version of the "to do" list!

One idea would be to add the 15 items from your list as issues in your github repository and use that as the basis for further discussion/implementation.

Another option would be to add the existing code to the voipdrupal project itself -- as 7.x-1.x-dev -- and handle everything directly from there.

How do people feel about that?

Best,

Leo

Drupal git

macneib's picture

Hi guys,
Could we get everything merged into the drupal/project/voipdrupal.git ?
That will cut down any confusion about git remotes.

I second this.

ben.bunk's picture

I second this.

VoIP Drupal 7.x-1.x is out...

leoburd's picture

Hello all,

I've just created a 7.x-1.x dev release to help us with the Drupal 7 porting of VoIP Drupal. Feel free to submit your issues and, above all, patches! :)

Thanks in advance for all of your support in making that happen!

Leo

PS> I used the code that Ben Bunk generated and made available on github.com/benbunk

Where the heck are we?

macneib's picture

The rumors of my death have been greatly exaggerated.

We're still here and working on the D7 port. Some may be asking: What exactly are you doing?
We let me first begin by saying, thanks to ben.bunk and his $25 we've got a pretty good head start on getting Voip Drupal for Drupal 7 to a semi functional state.
We've fixed most of the WSOD issues so the module installs itself, now were are inserting @todo comments where we think work needs to be done.
I'm using exclipse so finding/placing todos has been quite easy thus far. Posting a bunch of issues into drupal's issues manage seems like a huge task that I'm not up to.
The todo list is in the code. Placed one line above the code that needs converting.

DBTNG will be a significant obstacle here so that's where we started. After that is finished most other things should be relatively simple and straight forward.

Now my question is this: Where/how do you want us to upload the code? Something funky is happening with our git repo that posts entire files as diffs when only one or two lines were actually altered. Kind of frustrating and I'm working to solve that. Where can host git branches? on the voip drupal git repo?

Re: Where the heck are we?

leoburd's picture

Hello macneib, glad to hear that you're alive an kicking!

Overall, my inclination is to turn you and ben.bunk as co-maintainers of VoIP Drupal D7. This way, you should be able to perform the majority of the code cleanup without having to go through the issues queue for every single thing that has to be changed. How would that sound to both of you (and the rest of the VoIP Drupal community)?

The main problem that I see in this approach is the current behavior of your git repo... have you managed to fix it, already?

Regarding DBTNG, what exactly are you trying to do?

Best,

Leo

Install files are done

ben.bunk's picture

We can check off number 1 from my list.

I dug into the install files during some free time today and found out that it was much less work then I originally thought so I went ahead and updated my github repo with all the fixes.

Merged the repos

ben.bunk's picture

I've merged Macneib's repo into mine and pushed it up to github so we should be synced up now.

I pushed an update to the

ben.bunk's picture

I pushed an update to the github repo (https://github.com/benbunk/voipdrupal) that includes fixes for the server setup form and the server config screens. At this point I can successfully install, enable, and configure Tropo. I haven't tested the functionality of it yet but give it a whirl and see if you guys can get it going.

Updated 7x-1.x on d.o w/ the latest code from benbunk

leoburd's picture

Hello all,

This is just to let you know that I've just updated our drupal.org repository with the latest code from github.com/benbunk/voipdrupal

The new code seems to be way more functional and stable than what we used to have. It's a much better starting point for anyone who's interested in helping port VoIP Drupal to Drupal 7.

Thank's to Ben Bunk and all the other volunteers who've been contributing to this process!

Leo

Github is deprecated

ben.bunk's picture

Hello all,

The github code (https://github.com/benbunk/voipdrupal/) will no longer be updated. All code will be updated in the d.o repository in the 7.x-1.x branch going forward.

Feel free to checkout the code (instructions here: http://drupal.org/project/voipdrupal/git-instructions) or download the nightly builds (Build feed: http://drupal.org/node/1072578/release?api_version%5B%5D=103)

Thank you,
Ben Bunk

VoIP Drupal

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: