add freepbx module to PBX config

Discussion in 'General' started by chito, Aug 12, 2010.

  1. chito

    Joined:
    Jan 14, 2010
    Messages:
    26
    Likes Received:
    0
    Is it possible to add or remove FreePBX modules to the Elastix PBX Configuration, if yes can some one point me in a direction how to.
     
  2. dicko

    Joined:
    Oct 24, 2008
    Messages:
    4,099
    Likes Received:
    0
    No.

    Well, not easily, PaloSanto have decided what you need to see and it is hard-coded, so tough luck.

    As a work around use the unembedded FreePBX , but don't update it, that would be "unsupported", you are stuck with quite old stuff, sorry.

    ;)

    dicko
     
  3. saudade

    Joined:
    Jul 20, 2008
    Messages:
    11
    Likes Received:
    0
    It is actually very easy and not hard coded. You need to modify three files. If you wait till tomorrow I will post details it is 2.16 in the morning here in Los Angeles and I want to go to sleep. I promise I will explain it to you tomorrow. Thanks
     
  4. saudade

    Joined:
    Jul 20, 2008
    Messages:
    11
    Likes Received:
    0
    These are the three files you need to modify in order to change the menu on the left to access the modules on “unembedded freePBX”.
    You can remove the entries or add as needed. Keep in mind that the modification has to be done in all the three files. O.K. the file: ”en.lang “ is the one that will set the names in the menu and that will show on the main page of the interface. The “index.php” file constructs the page and the “main.tpl” sets the destination or what the menu will take you to when clicked. You can see that my “unembedded freePBX” link takes me to the “ARI” module which I now call “Web Portal”. Follow this model and you can customize your installation the way you want. As you can see it is not difficult nor is it hard coded in any way. I hope you and others can use it. If you need more tips post here.
    Note you have to open these files and look for the text needed to be edited. I use WinSCP to work on these machines and that software is also free.

    ---------------------------------------------------------------------------------------
    First file: www/html/modules/pbxadmin/index.php

    if(check_reload_needed()) {
    // Reviso si el REQUEST_URI tiene ya variables tipo get. Solo busco por un signo de ?
    $pos=strpos($_SERVER['REQUEST_URI'], '?');
    if($pos>0) $URL_RELOAD = $_SERVER['REQUEST_URI']."&handler=reload";
    else $URL_RELOAD = $_SERVER['REQUEST_URI']."?handler=reload";

    $salida .= "<table border=0 cellpadding=2 cellspacing=0 align='center' width='100%'><tr bgcolor='#f6bbbb'><td align='center'><a href='$URL_RELOAD'>Apply Configuration Changes Here</a></td></tr></table>";
    }

    $smarty->assign("Option", $arrLang['Option']);
    $smarty->assign("Unembedded_freePBX", $arrLang['Unembedded freePBX']);
    $smarty->assign("Basic", $arrLang['Basic']);
    $smarty->assign("Extensions", $arrLang['Extensions']);
    $smarty->assign("Feature_Codes", $arrLang['Feature Codes']);
    $smarty->assign("General_Settings", $arrLang['General Settings']);
    $smarty->assign("Outbound_Routes", $arrLang['Outbound Routes']);
    $smarty->assign("Trunks", $arrLang['Trunks']);
    $smarty->assign("Inbound_Call_Control", $arrLang['Inbound Call Control']);
    $smarty->assign("Inbound_Routes", $arrLang['Inbound Routes']);
    $smarty->assign("Zap", $arrLang['Zap']);
    $smarty->assign("Announcements", $arrLang['Announcements']);
    $smarty->assign("Day_Night", $arrLang['Day Night']);
    $smarty->assign("Follow_Me", $arrLang['Follow Me']);
    $smarty->assign("IVR", $arrLang['IVR']);
    $smarty->assign("Misc_Destinations", $arrLang['Misc Destinations']);
    $smarty->assign("Queues", $arrLang['Queues']);
    $smarty->assign("Queue_Prio", $arrLang['Queue_Prio']);
    $smarty->assign("Ring_Groups", $arrLang['Ring Groups']);
    $smarty->assign("Time_Groups", $arrLang['Time Groups']);
    $smarty->assign("Time_Conditions", $arrLang['Time Conditions']);
    $smarty->assign("Internal_Options_Configuration", $arrLang['Internal Options & Configuration']);
    $smarty->assign("Conferences", $arrLang['Conferences']);
    $smarty->assign("Misc_Applications", $arrLang['Misc Applications']);
    $smarty->assign("Music_on_Hold", $arrLang['Music on Hold']);
    $smarty->assign("PIN_Sets", $arrLang['PIN Sets']);
    $smarty->assign("Paging_Intercom", $arrLang['Paging and Intercom']);
    $smarty->assign("Parking_Lot", $arrLang['Parking Lot']);
    $smarty->assign("System_Recordings", $arrLang['System Recordings']);
    $smarty->assign("Backup", $arrLang['Backup']);
    $smarty->assign("Remote_Access", $arrLang['Remote Access']);
    $smarty->assign("Callback", $arrLang['Callback']);
    $smarty->assign("DISA", $arrLang['DISA']);

    $smarty->assign("htmlFPBX", $htmlFPBX);
    $salida .= $smarty->fetch("$local_templates_dir/main.tpl");
    return $salida;
    }
    ?>
    --------------------------------------------------------------------------------------
    Second file: www/html/modules/pbxadmin/themes/default/main.tpl

    <table cellspacing="0" cellpadding="0" border="0" width="100%">
    <tr>
    <td valign="top" width="220"><div id="nav"><ul>
    <li>{$Option}</li>
    <li>{$Unembedded_freePBX}</li>
    <li>{$Basic}</li>
    <li>{$Extensions}</li>
    <li>{$Feature_Codes}</li>
    <li>{$General_Settings}</li>
    <li>{$Outbound_Routes}</li>
    <li>{$Trunks}</li>
    <li>{$Inbound_Call_Control}</li>
    <li>{$Inbound_Routes}</li>
    <li>{$Zap}</li>
    <li>{$Announcements}</li>
    <li>{$Day_Night}</li>
    <li>{$Follow_Me}</li>
    <li>{$IVR}</li>
    <li>{$Misc_Destinations}</li>
    <li>{$Queues}</li>
    <li>{$Queue_Prio}</li>
    <li>{$Ring_Groups}</li>
    <li>{$Time_Groups}</li>
    <li>{$Time_Conditions}</li>
    <li>{$Internal_Options_Configuration}</li>
    <li>{$Conferences}</li>
    <li>{$Misc_Applications}</li>
    <li>{$Music_on_Hold}</li>
    <li>{$PIN_Sets}</li>
    <li>{$Paging_Intercom}</li>
    <li>{$Parking_Lot}</li>
    <li>{$System_Recordings}</li>
    <li>{$Backup}</li>
    <li>{$Remote_Access}</li>
    <li>{$Callback}</li>
    <li>{$DISA}</li>
    </ul></div></td>
    <td valign="top">{$htmlFPBX}</td>
    </tr>
    </table>
    ---------------------------------------------------------------------------------------
    Third File: www/html/modules/pbxadmin/lang/en.lang

    $Id: en.lang,v 1.7 2008/02/18 09:49:00 bmacias Exp $ */
    global $arrLangModule;
    $arrLangModule=array(
    "Option" => "Option",
    "Unembedded freePBX" => "Web Portal",
    "Basic" => "Basic",
    "Extensions" => "Extensions",
    "Feature Codes" => "Feature Codes",
    "General Settings" => "General Settings",
    "Outbound Routes" => "Outbound Routes",
    "Trunks" => "Trunks",
    "Inbound Call Control" => "Inbound Call Control",
    "Inbound Routes" => "Inbound Routes",
    "Zap" => "Zap Channel DIDs",
    "Announcements" => "Announcements",
    "Day Night" => "Day/Night Control",
    "Follow Me" => "Follow Me",
    "IVR" => "Auto Attendant",
    "Misc Destinations" => "Misc Destinations",
    "Queues" => "Queues",
    "Queue_Prio" => "Queue Priorities",
    "Ring Groups" => "Ring Groups",
    "Time Groups" => "Time Groups",
    "Time Conditions" => "Time Conditions",
    "Internal Options & Configuration" => "Internal Options & Configuration",
    "Conferences" => "Conferences",
    "Misc Applications" => "Misc Applications",
    "Music on Hold" => "Music on Hold",
    "PIN Sets" => "PIN Sets",
    "Paging and Intercom" => "Paging and Intercom",
    "Parking Lot" => "Parking Lot",
    "System Recordings" => "System Recordings",
    "Backup" => "Backup/Restore",
    "Remote Access" => "Remote Access",
    "Callback" => "Callback",
    "DISA" => "DISA",
    );
    ?>
     
  5. saudade

    Joined:
    Jul 20, 2008
    Messages:
    11
    Likes Received:
    0
    I forgot to mention that in most cases however not always, you will have to clear the cache in the following folder:

    /var/www/html/var/templates_c

    These are the created templates you see on your browser. Also chances are that the browser itself may need a cache flush as well. If you do not see these templates after deleting them once simply use the refresh feature if you are using WinSCP.
     
  6. dicko

    Joined:
    Oct 24, 2008
    Messages:
    4,099
    Likes Received:
    0
    If you don't consider your solution to be hard-coding, I suggest your concept of three files is off by a quite a few, please for completeness and for the non anglophones, post also your proposed changes to:-

    bg.lang
    cn.lang
    el.lang
    fa.lang
    hu.lang
    ko.lang
    ro.lang
    sr.lang
    br.lang
    da.lang
    fr.lang
    it.lang
    pl.lang
    ru.lang
    ca.lang
    de.lang
    es.lang
    hr.lang
    ja.lang
    pt-br.lang
    sl.lang


    all need to be orthogonal if you add a module. or as they say at google


    Maak je geen zorgen ze zijn gewoon verdomd buitenlanders.
    ?? ?????????? ??? ?????? ????????? ???????????.
    no te preocupes no son más que mierda extranjeros.

    or even my favorite

    msiwe na wasiwasi wao ni wageni fucking tu.

    (luckily the last one will not transcode through g729 :) )
     
  7. saudade

    Joined:
    Jul 20, 2008
    Messages:
    11
    Likes Received:
    0
    For a minute I thought I was going to be talking to someone half intelligent I guess I was wrong. i could nevertheless translate this into 5 languages if I wanted to. However the purpose of my reply was to let that person know how really it "really" is. Also maybe this guy only needed a guide which I gave to him. Perhaps you prefer to talk or should I say post in Spanish. that is fine also. However I will not use the kind of language you do nor would I insult you and call you "extranjero" despectivamente. I am proud to be an American if that is what you were referring to. (An educated one if I may say). Anyway enjoy your self and do not insult anybody. That's not the purpose of this forum.
    I am sure the guy was not about to write a new module anyway.
     
  8. dicko

    Joined:
    Oct 24, 2008
    Messages:
    4,099
    Likes Received:
    0
    You questioned my post, I merely replied, your solution is without doubt a hardcoded one and I might add a less than complete one, as I precisely pointed out. I am not unarmed, neither intellectually or linguistically.

    Por favor, vaya con Dios y la paz

    dicko
     
  9. saudade

    Joined:
    Jul 20, 2008
    Messages:
    11
    Likes Received:
    0
    It simply gives the impression you are uneducated what can I say and your first post was wrong and totally without foundation Me entiendes o mejor digo Orale amigo? Stay with God my man. you need help. You are egocentric and not very proud of what you are.
    I feel sorry for you.
     
  10. dicko

    Joined:
    Oct 24, 2008
    Messages:
    4,099
    Likes Received:
    0
    My apologies saudade,

    I forgot my manners three posts ago, I welcome you to these fora my friend, stick around, you might learn a thing or two.

    regards

    dicko
     
  11. saudade

    Joined:
    Jul 20, 2008
    Messages:
    11
    Likes Received:
    0
    I will visit the forums for as long as I want after all I do live in a Democracy that is The USA OF COURSE. I never meant to get into a confrontation with you or any body. all I wanted to do is help. As far as Me learning from this? I hope you meant the forums. We are not perfect my man but we can learn, that is why we come here. as far as me attacking your post, that is not so I simply pointed out to the guy that the solution to HIS problem could be resolved that way. You attacked me and that is fine after all, when I was at MIT I had confrontations with my professors.
    Have a good one and perhaps we could talk sometime I was planning to visit Ecuador to see these fine Palosanto people. I have no idea where you are but hey who knows. Take care..
    By the way my name is Michael and I live in Los Angeles and in Sao Paulo Brazil.
     
  12. dicko

    Joined:
    Oct 24, 2008
    Messages:
    4,099
    Likes Received:
    0
    Given your years at MIT, then I believe you could have gotten your analytical thinking down better, please read the thread from the beginning, I suggested originally that the core embedded freepbx functions were hardcoded, they are, and that without doubt, you came up with a solution, which whilst perhaps effective for anglophones, was an overload of the elastix code, and not without irony, was IMHO itself hardcoded, it will not survive a yum update.

    Had you not been "pointed" as to my post I would have let it go, your post was however, even by MIT standards incomplete, (come on be honest). Your further posts indicate a lack of academic discipline that I suggest you might need to re-remember from what you learned at school, YOU became aggressive and strangely simultaneously defensive even if from an indefensible position, I am myself not without academic training. So as you apparently missed my linguistic whimsy, took it as a personal attack, and still cared to denigrate me you might find it a little harder than you thought, I have been doing this stuff way longer than you, and I really don't care what you think of me.

    I am also in disagreement with your self-founded thus unsupportable assertion that I am " . . not very proud of what you are . . " , I do not suffer in any way from 'saudade' which I believe means nostalgia, or perhaps in your case, regret in Portuguese.

    Anyway, let's put that aside, please accept my previous welcome and lets move on.

    Just for your information there is a very serious push to remove the "Embedded FreePBX" in Elastix by many of us because of it's basic dysfunction and stultifying effect on the very dynamic FreePBX. So hopefully this whole thread will soon become moot.

    dicko


    p.s. I also live in L.A. and am prepared to buy you a Brahma any time you care to buy me one reciprocally.

    p.p.s chito is from the Dutch Antilles, is Dutch one of your five languages?
     
  13. chito

    Joined:
    Jan 14, 2010
    Messages:
    26
    Likes Received:
    0
    Thanks, for the info it give me a good insight of how the elastix pbx config modules are setup.
     
  14. ahmadmasoood

    Joined:
    Dec 31, 2010
    Messages:
    7
    Likes Received:
    0
    hi...

    thanks for great/fantastic guide...

    can you help me that how i can add and delete the Top menu (system, Agenda, Email etc) and how i can add and remove the controls in each form.... i mean that i want to add and delete the textboxes or dropDownBoxes in PBX section.. how i can????
     
  15. ahmadmasoood

    Joined:
    Dec 31, 2010
    Messages:
    7
    Likes Received:
    0
    plz reply me as soon as possible .. its very urgent :)

    waiting for your response..
     
  16. dicko

    Joined:
    Oct 24, 2008
    Messages:
    4,099
    Likes Received:
    0
    If you care to RTFM, "Elastix Without Tears" you will discover that you can control access to Elastix Modules by group and user.

    If you care to read the manual for the Unembedded FreePBX (basically http://www.freepbx.org and the inbuilt "hover over help" ) you will discover that you can create accounts with limited access.

    If this doesn't give you enough granularity, I can but refer you to:

    http://www.elastix.org/component/kunena ... g=en#67643

    which aparrently you have again ignored the advice of.

    If it's REALLY urgent I suggest you start doing your homework ASAP. or perhaps wait for divine intervention, I further suggest the first process will be quicker.
     

Share This Page