Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

FOP2 Community Forum

  1. Home
  2. Support
  3. FOP2 with agents

FOP2 with agents

Scheduled Pinned Locked Moved Support
17 Posts 3 Posters 519 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C
    C
    court
    wrote on last edited by
    #1

    I have 200 users which are set up as agents using AgentCallBackLogin etc to enable hotdesking. With FOP1 i was able to use the same config but simply have

    [Agent/496]
    extension=496

    instead of

    [SIP/496]
    extension=496

    and everything worked fine. This doesn't seem to work with FOP2.

    Am i missing something really simple?
    Thanks
    Court

    1 Reply Last reply
    0
    • N
      N
      nicolas
      wrote on last edited by
      #2

      Try with:

      [SIP/496]
      extension=496
      context=locationFORagentCALLBACKlogin
      

      You have to fill the context and extension with the ones that show as Location when you do a "show agents"

      Best regards,

      1 Reply Last reply
      0
      • C
        C
        court
        wrote on last edited by
        #3

        Hi Nic,

        Sorry my complete button config is:

        [Agent/510]
        type=extension
        extension=510
        voicemailext=*510@fop
        channel=Agent/510
        context=fop
        mailbox=510
        label=Courtenay Greig 510

        It displays, but when i make a call, it shows no change, however if someone rings me, Line one changes to show the new info, the the colour doesnt go red and the little LED remains unchanged. Its like its only getting half the info....

        Is the above config correct?

        Thanks Court

        1 Reply Last reply
        0
        • C
          C
          court
          wrote on last edited by
          #4

          Can anybody help me with this?

          Thanks
          Court

          1 Reply Last reply
          0
          • N
            N
            nicolas
            wrote on last edited by
            #5

            Hi Court,

            You did not post the output of "show agents". As I said, the channel name is not that important. The important part is the LOCATION for the agent that needs to match extension & context in fop's button config.

            You can have something like

            [SIP/itdoesnotmatter]
            type=extension
            extension=100
            context=agent

            Agent channels are not trackable "all the way", as they are proxy channels. FOP will try to track them, but you cannot track an outgoing call without knowing the real channel the agent is using.

            So, do a "show agents" in the asterisk cli, look at the Location, and configure a button with the same extension and context you see there... if location is 4302@somecontext, you have to set extension 4302 and context "somecontext" in the button.

            Best regards,

            1 Reply Last reply
            0
            • C
              C
              court
              wrote on last edited by
              #6

              ah sorry ok....

              402 (402 Marcel Brandenburg) available at '1053@agents' (musiconhold is 'default')
              403 (403 Tessa Clarke) available at '1062@agents' (musiconhold is 'default')
              404 (404 Merri Blakemore) available at '1055@agents' (musiconhold is 'default')
              405 (405 Glyn OBrien) available at '1103@agents' (musiconhold is 'default')
              406 (406 Russell Garvey) available at '1037@agents' (musiconhold is 'default')

              so in our environment when people are dynamically logging in and out all day, we would need to rebuild the fop config file each time somebody logs in to reassign the channel to which ever phone they logged into?

              if this is the case, is there any way to issue a 'refresh' to fop2_server, otherwise each time somebody logs in i would have to restart the fop2_server service, and that would cause all clients to disconnect (i assume)

              Many thanks

              1 Reply Last reply
              0
              • N
                N
                nicolas
                wrote on last edited by
                #7

                You do not need to rebuild fop configs, you need to use the same extension and context as the location for a fop button:

                402 (402 Marcel Brandenburg) available at '1053@agents' (musiconhold is 'default')

                That should be set as:

                [dummy/channel]
                type=extension
                extension=1053
                context=agent

                You should be able to track inbound calls for that agent with no issues.

                Best regards,

                1 Reply Last reply
                0
                • C
                  C
                  court
                  wrote on last edited by
                  #8

                  sorry, i might be really missing something.....but what about the label...today Marcel is logged in, so the label would say 402 Marcel....but tomorrow when John logs in, that same SIP extension button needs to say 410 John....so therefore wouldnt i need to change the label and reload to get it to show names correctly as people log in to different phones?

                  1 Reply Last reply
                  0
                  • N
                    N
                    nicolas
                    wrote on last edited by
                    #9

                    Fop2 will change the buton labels to the Agent name or member interface name for dynamic queue members. It will change the label back when they log off.

                    1 Reply Last reply
                    0
                    • G
                      G
                      gmalsack
                      wrote on last edited by
                      #10

                      I am having the same problem. I have read this post and still don't understand how this is supposed to work. Clear documentation would be very helpful. Here's what I'm doing and what I need to have happen. I purchased the FOP2 regular basic license as I need 58 buttons to replicate the op_panel-0.30 install that we are replacing as it doesn't support queues and agents correctly now that we upgraded to asterisk 1.6. Previously we were using asterisk 1.4 and op_panel-0.30. This combination was working perfectly. When an agent was not logged in the extension button showed the actual sip phones extension. When the agent logged in via agentcallbacklogin, the extensions label changed from the sip extension number to the agents name, it also shows when the agent is on an inbound call, and when the agent's phone is ringing.

                      With the following configurations below, do not really help. The sip button shows when the phone is ringing and when someone is on that phone, however there is no way to know wwhich agent is on that phone. The label always says the sip extension no matter what. Additionally even though the agent is logged in, and the agents name is listed under the queue they are logged into, the agents icon never changes, it always shows ready, it never changes to busy, even though the phone she logged into is busy.

                      Agent login dialplan:
                      extensions.conf
                      exten => 400,1,Answer()
                      exten => 400,n,wait(0.5)
                      exten => 400,n,read(agent,agent-user)
                      exten => 400,n,Authenticate(/agentpw-${agent},d,)
                      exten => 400,n,read(ext,agent-newlocation)
                      exten => 400,n,GotoIf($["${ext}" = ""]?logout)
                      exten => 400,n,GotoIf(${DB_EXISTS(Agent_Ext/${agent})}?move)
                      exten => 400,n,Set(DB(Agent_Ext/${agent})=${ext})
                      exten => 400,n,AddQueueMember(800,local/${agent}@agent,,,,SIP/${ext})
                      exten => 400,n,playback(agent-loginok)
                      exten => 400,n,playback(vm-goodbye)
                      exten => 400,n,Hangup
                      exten => 400,n(move),set($junk=${DB_DELETE(Agent_Ext/${agent})})
                      exten => 400,n,RemoveQueueMember(800,local/${agent}@agent)
                      exten => 400,n,Set(DB(Agent_Ext/${agent})=${ext})
                      exten => 400,n,AddQueueMember(800,local/${agent}@agent,,,,SIP/${ext})
                      exten => 400,n,playback(agent-loginok)
                      exten => 400,n,playback(vm-goodbye)
                      exten => 400,n,Hangup
                      exten => 400,n(logout),set($junk=${DB_DELETE(Agent_Ext/${agent})})
                      exten => 400,n,RemoveQueueMember(800,local/${agent}@agent)
                      exten => 400,n,playback(agent-loggedoff)
                      exten => 400,n,playback(vm-goodbye)
                      exten => 400,n,hangup

                      queues.conf
                      [general]
                      persistentmembers = yes
                      autofill = yes
                      monitor-type = MixMonitor
                      eventwhencalled = yes

                      [800]
                      fullname = CSR Agent Queue
                      strategy = rrmemory
                      timeout = 8
                      timeoutreset = yes
                      wrapuptime = 20
                      autofill = yes
                      autopause = no
                      maxlen =
                      joinempty = yes
                      leavewhenempty = no
                      reportholdtime = no
                      musicclass = csr

                      fop2 buttons.cfg
                      [SIP/100]
                      type=extension
                      extension=100
                      context=default
                      label=100

                      [QUEUE/800]
                      type=queue
                      label=CSR
                      extension=800
                      context=default

                      [QUEUE/805]
                      type=queue
                      label=Luxe
                      extension=805
                      context=default

                      fop-0.3 buttons.cfg
                      [SIP/101]
                      Position=2
                      Label="CSR 101"
                      Extension=101
                      Context=default

                      [SIP/107]
                      Position=n
                      Label="CSR 107"
                      Extension=107
                      Context=default

                      [SIP/110]
                      Position=n
                      Label="CSR 110"
                      Extension=110
                      Context=default

                      [SIP/111]
                      Position=n
                      Label="CSR 111"
                      Extension=111
                      Context=default

                      ;[SIP/112]
                      ;Position=n
                      ;Label="CSR 112"
                      ;Extension=112
                      ;Context=default

                      [SIP/113]
                      Position=n
                      Label="CSR 113"
                      Extension=113
                      Context=default

                      [SIP/114]
                      Position=n
                      Label="Custom 114"
                      Extension=114
                      Context=default

                      [SIP/115]
                      Position=n
                      Label="CSR 115"
                      Extension=115
                      Context=default

                      [SIP/116]
                      Position=n
                      Label="CSR 116"
                      Extension=116
                      Context=default

                      [SIP/118]
                      Position=n
                      Label="CSR 118"
                      Extension=118
                      Context=default

                      [SIP/121]
                      Position=n
                      Label="CSR 121"
                      Extension=121
                      Context=default

                      [SIP/127]
                      Position=n
                      Label="CSR 127"
                      Extension=127
                      Context=default

                      [SIP/131]
                      Position=n
                      Label="Custom 131"
                      Extension=131
                      Context=default

                      [SIP/138]
                      Position=n
                      Label="CSR 138"
                      Extension=138
                      Context=default

                      [SIP/142]
                      Position=n
                      Label="CSR 142"
                      Extension=142
                      Context=default

                      [SIP/149]
                      Position=n
                      Label="CSR 149"
                      Extension=149
                      Context=default

                      [SIP/150]
                      Position=n
                      Label="CSR 150"
                      Extension=150
                      Context=default

                      [SIP/152]
                      Position=n
                      Label="CSR152"
                      Extension=152
                      Context=default

                      [SIP/123]
                      Position=n
                      Lablel="Custom 123"
                      Extension=123
                      Context=default

                      ;
                      ; CSR LuxeBidder lines
                      ;
                      [SIP/2110]
                      Position=22
                      Label="CSR 2110"
                      Extension=2110
                      Context=default

                      [SIP/2112]
                      Position=n
                      Label="CSR 2112"
                      Extension=2112
                      Context=default

                      [SIP/2113]
                      Position=n
                      Label="CSR 2113"
                      Extension=2113
                      Context=default

                      [SIP/2118]
                      Position=n
                      Label="CSR 2118"
                      Extension=2118
                      Context=default

                      [SIP/2127]
                      Position=n
                      Label="CSR 2127"
                      Extension=2127
                      Context=default

                      [SIP/2138]
                      Position=n
                      Label="CSR 2138"
                      Extension=2138
                      Context=default

                      [SIP/2149]
                      Position=n
                      Label="CSR 2149"
                      Extension=2149
                      Context=default

                      [QUEUE/800]
                      Position=32-49
                      Label="CSR Queue"
                      Extension=800

                      [QUEUE/800]
                      Position=50
                      Label="CSR Q Summary"
                      Extension=800

                      [QUEUE/806]
                      Position=30
                      Label="Custom Q Summary"
                      Extension=806

                      [QUEUE/805]
                      Position=52-69
                      Label="Luxe Queue"
                      Extension=805

                      [QUEUE/805]
                      Position=70
                      Label="Luxe Q Summary"
                      Extension=805

                      ; 3rd box
                      [rectangle]
                      x=708
                      y=35
                      width=298
                      height=550
                      line_width=3
                      ;line_color=ffff10
                      ;fade_color1=ffff10
                      ;fade_color2=ffff3F
                      line_color=10ff10
                      fade_color1=10ff10
                      fade_color2=10ff10
                      rnd_border=2
                      alpha=10
                      layer=top ; top = above buttons
                      ; bottom = below buttons

                      ; 2nd column top row
                      ;[rectangle]
                      ;x=498
                      ;y=35
                      ;width=252
                      ;height=515
                      ;line_width=3
                      ;line_color=ff1010
                      ;fade_color1=ff1010
                      ;fade_color2=a01000
                      ;line_color=10ff10
                      ;fade_color1=10ff10
                      ;fade_color2=10ff10
                      ;rnd_border=2
                      ;alpha=10
                      ;layer=top
                      ;panel_context=* ; The item will be persistant across contexts

                      ; 2nd column bottom row
                      ;[rectangle]
                      ;x=498
                      ;y=255
                      ;width=252
                      ;height=295
                      ;line_width=3
                      ;line_color=10ff10
                      ;fade_color1=10ff10
                      ;fade_color2=10ff00
                      ;rnd_border=2
                      ;alpha=20
                      ;layer=top

                      ; 1st column
                      [rectangle]
                      x=-1
                      y=35
                      width=426
                      height=550
                      line_width=3
                      line_color=1010ff
                      fade_color1=1010ff
                      fade_color2=1010ff
                      rnd_border=2
                      alpha=10
                      layer=top

                      ; luxe queue
                      ;
                      [rectangle]
                      x=424
                      y=35
                      width=283
                      height=550
                      line_width=3
                      line_color=ff3300
                      fade_color1=ff3300
                      fade_color2=ff3300
                      rnd_border=2
                      alpha=10
                      layer=top

                      ; you can include configuration files
                      ;
                      ;include => more_rectangles.cfg

                      ;[LEGEND]
                      ;x=800
                      ;y=50
                      ;text=Zap Lines
                      ;font_size=32
                      ;font_color=000000
                      ;font_family=Times New Roman ; only used when use_embed_fonts=0
                      ;use_embed_fonts=1 ; if set to 1 it will use an embeded Arial type font
                      ; that looks consistently between platforms/os

                      [LEGEND]
                      x=430
                      y=50
                      text=DNL Queue
                      font_size=20
                      font_color=000000
                      font_family=Arial
                      use_embed_fonts=1

                      [LEGEND]
                      x=720
                      y=50
                      text=Luxe Queue
                      font_size=20
                      font_color=000000
                      font_family=Arial
                      use_embed_fonts=1

                      ;[LEGEND]
                      ;x=555
                      ;y=270
                      ;text=Queues
                      ;font_size=32
                      ;font_color=000000
                      ;font_family=Arial
                      ;use_embed_fonts=1

                      [LEGEND]
                      ;x=160
                      x=10
                      y=50
                      text=CSR Agents
                      font_color=000000
                      font_size=20
                      font_family=Arial
                      use_embed_fonts=1

                      [LEGEND]
                      x=290
                      y=50
                      text=Luxe Agents
                      font_color=000000
                      font_size=20
                      font_family=Arial
                      use_embed_fonts=1

                      [LEGEND]
                      x=290
                      y=485
                      text=Custom Q
                      font_color=000000
                      font_size=20
                      font_family=Arial
                      use_embed_fonts=1

                      ;[LEGEND]
                      ;x=75
                      ;y=75
                      ;text=Local
                      ;font_size=24
                      ;font_family=Arial
                      ;font_color=000000
                      ;use_embed_fonts=1

                      ;[LEGEND]
                      ;x=315
                      ;y=75
                      ;text=Remote
                      ;font_color=000000
                      ;font_size=24
                      ;font_family=Arial
                      ;use_embed_fonts=1

                      *** AGENT LOGGED ON ***
                      localhost*CLI> queue show 800
                      800 has 0 calls (max unlimited) in 'rrmemory' strategy (1s holdtime, 0s talktime), W:0, C:1, A:0, SL:0.0% within 0s
                      Members:
                      local/1149@agent (dynamic) (Not in use) has taken no calls yet
                      No Callers

                      localhost*CLI> database show
                      /Agent_Ext/1149 : 100
                      /Queue/PersistentMembers/800 : local/1149@agent;0;0;local/1149@agent;SIP/100

                      1 Reply Last reply
                      0
                      • N
                        N
                        nicolas
                        wrote on last edited by
                        #11

                        Hello,

                        We tried to make the documentation as clear as possible. It is also nice to have clear and precise questions so we can reply accordingly.

                        FOP2 will work correctly for any type of queue member type and login method, either if you use 1.4 deprecated agentcallbacklogin (where it will behave similar to fop1, changing the button label to the agent name, but not the led color).

                        If you are using 1.6 now there is no more agentcallbacklogin, but you have the option to add queue members dynamically and use the membername parameter. If there is a local queue member logged into any queue, using the membername option, and you have a button in fop2 that matches the extension@context of that local queue member, the button will change the label to the membername when added, and back to the regular button label when removed.

                        There is nothing to do on your part, there are no special settings. If the dialplan in asterisk uses those functions and parameters I mention, and your fop2 buttons are configured correctly, it will just work. The dialplan you pasted is not using the queue member name, so not sure where do you expect fop2 to find out about it. You can do something like:

                        exten => 400,n,AddQueueMember(800,local/${agent}@agent,,,MY FANCY AGENT NAME,SIP/${ext})
                        

                        Replace the agent name with whatever you like, perhaps that agent number, or maybe you have some DB entries mapping the agent number to their real name... etc. The member name is also important for queue_log statistics, is what we have now that agentcallbacklogin was deprecated.

                        best regards,

                        1 Reply Last reply
                        0
                        • G
                          G
                          gmalsack
                          wrote on last edited by
                          #12

                          Thanks for the response. I did figure out that putting a fancy name in the addqueuemember line makes a nice name show up under the queue rather than the agent technical name. That's very cool and will make the boss very happy.

                          Unfortunately either I didn't do a good job at relaying my "real" need, or I'm too stupid to understand this concept... Sorry..

                          So what do you mean by "matches extension@context of that local queue member"? My understanding of this would be to have a button that says 1149@agents. Then when the user that logs into queue 800 as agent 1149 (which would login with device local/1149@agents). That button would show [1149@agents] when the user is not logged in and [agent fancy name] when the agent is logged in.

                          Which is not really what I'm going for.

                          I want to have a button that monitors SIP/100. So the hardware phone that registers as 100 would be the location the button is monitoring. So the button would show [SIP/100] (or whatever the label is for that button) when there is no one logged into the queue, but when an agent sits down at that phone and logs into the queue using the agent device local/1149@agents, the button would change from SIP/100 to the fancy name of the agent that logged into the queue.

                          Thank you for your time! 🙂
                          Cheers!
                          Greg

                          1 Reply Last reply
                          0
                          • G
                            G
                            gmalsack
                            wrote on last edited by
                            #13

                            I got it! Maybe this will clarify what I'm looking to do. How do I make this button:

                            [SIP/100]
                            type=extension
                            label=Ext 100
                            extension=100
                            context=default

                            Change the label from "Ext 100" to "Rachel" when I do this in the dialplan:

                            exten => 400,n,AddQueueMember(800,local/1149@agent,,,Rachel,SIP/100)

                            Does that help?

                            Thanks! Awesome App! The boss is really liking it and can't wait for me to get this last item finished!
                            Greg

                            1 Reply Last reply
                            0
                            • G
                              G
                              gmalsack
                              wrote on last edited by
                              #14

                              While still working on this issue I noticed that I was running FOP2 2.11. Since many of the forum posts point towards 2.2 being the answer, I downloaded the new version, and upgraded. This has not resolved this problem (it actually caused more problems, so I started a new post). I also found another post that stated:

                              {
                              For example, if you add a member like:

                              Local/1234@agents/n

                              The button file has to have a button with extension=1234 and context=agents. That way fop2 will be able to rename the button to the memberinterface name set on your dialplan (if you use the member interface parameter).
                              }

                              However, I tried this as well. The ending result is a static button that shows the agent name all of the time rather than only while the agent is logged in.

                              Some additional points that come to mind, not sure if they will help here or not, but:

                              1. my dynamic members are not in the asterisk configuration anywhere.
                              2. members will sign into their queues from different sip phones from time to time.
                              3. various members will sign into the same sip phone each day as the shifts change. i.e. many members share a workstation from shift to shift.

                              Sorry for all of the posts, but I really want to make this work, and I'm just trying to share anything I can to help. I already told the boss it would work, since it did on asterisk 1.4 and fop1 .30. now my reputation is on the line... 😞

                              Thanks!
                              Greg

                              1 Reply Last reply
                              0
                              • N
                                N
                                nicolas
                                wrote on last edited by
                                #15

                                I got it! Maybe this will clarify what I'm looking to do. How do I make this button:

                                [SIP/100]
                                type=extension
                                label=Ext 100
                                extension=100
                                context=default

                                Change the label from "Ext 100" to "Rachel" when I do this in the dialplan:

                                exten => 400,n,AddQueueMember(800,local/1149@agent,,,Rachel,SIP/100)

                                If you want to change SIP/100 button label, the Addqueuemember line in your dialplan should be:

                                exten => 400,n,AddQueueMember(800,Local/100@default/n,,,Rachel,SIP/100)
                                

                                The extension@context after a Local type channel MUST MATCH the extension and context of the button configuration. And I am also fixing the case and suffix of the local type channel , as you might face issues with the queue_log file if you do not use /n.

                                Suppose that you do not use the "default" context for your Queue context in the dialplan, but you use the "agent" context as per the previous example, but you do use the "default" context to reach the regular device/extension. In that case, add the "queuecontext=agent" entry in the button configuration file.

                                [SIP/100]
                                type=extension
                                label=Ext 100
                                extension=100
                                context=default
                                queuecontext=agent
                                

                                You said you had turns, someone logs in sip/100 in the morning and another agent in the afternoon. In that case, work it out in your dialplan, so the fancy name "Rachel" or whatever is taken from some variable or astdb entry when the agent authenticates itself, etc.. You should manage that via the dialplan. FOP2 will just pick the name up.

                                1 Reply Last reply
                                0
                                • G
                                  G
                                  gmalsack
                                  wrote on last edited by
                                  #16

                                  That doesn't make much sense, my phones are extensions sip/100 - sip/199. My queuemembers are local/1100 - local/1149. With you're proposed setup, I would have to setup 49 buttons for each of the 100 phones. 1 phone button that would match each member. If I simply setup 1 button to monitor sip/100 and have the member login as 100 that is at that phone for the current shift, how am I supposed to know when a call is transferred to the member local/100 which member it is, since your method has everyone at phone extension 100 logging in as 100.

                                  I have dumped a tarball of screen shots to here:

                                  http://www.gmellc.com/fop-screenshots.tgz

                                  I setup a button like you stated above. This button works similar to what I'm looking for, but in reverse. I don't want to create a member button for each phone, I would like to create just the phone buttons and have the phone button show me which member is at that phone. Just like fop1 used to do.

                                  Here's a fop1 button for the CSR phone extention 107. When agent/queue member 1149 logs into the queue from the csr phone 107, the label of this button changes from CSR 107 to Rachel.

                                  [SIP/107]
                                  Position=n
                                  Label="CSR 107"
                                  Extension=107
                                  Context=default

                                  I guess long story short, can you send me an example that would allow me to visually display which queue members are at which phones, knowing that my phones are SIP/100 - SIP/199 and members are local/1100 - local/1149?

                                  Lastly as you can see in fop2-3, even though the member rachel is logged out of the queue as seen in fop2-4, the member still shows as being logged in. This behaviour started when I installed 2.20.

                                  Thanks for all your help!
                                  Greg

                                  1 Reply Last reply
                                  0
                                  • N
                                    N
                                    nicolas
                                    wrote on last edited by
                                    #17

                                    Hi Greg,

                                    It seems you are asking me to configure your asterisk to replace agentcallbacklogin? I can only help you configuring fop2, and suggest asterisk configs, but not configure your whole dialplan. FOP2 works very well with agentcallbacklogin too. It is not a behavior from FOP that you want in FOP2, but forwardport the asteriskcallbacklogin application that was deprecated since asterisk 1.6.

                                    I do not understand your Local/XXXX and SIP/YYY relation. That is something that you choose to do in your dialplan logic. But it does not make any sense just by reading your post. How do you relate a device with an extension? I have no idea, you never mentioned how either. And it does not matter. Your dialplan is yours, but do not expect tools to match your criteria or ideas on how things should work.

                                    If you want the agentcallbacklogin behaviour, then use agentcallbacklogin in asterisk 1.4, or switch to agentlogin that works in a similar fashion also in 1.6 and 1.8. FOP and FOP2 track devices/channel names. They do not track other things. You must define a button to track a real asterisk device/channel, with just one exception: user&device mode for freepbx.

                                    You can try to mimic freepbx user and device mode, where you setup buttons like:

                                    [USER/1120]

                                    and then you create astdb entries mapping users and devices, in the way that FreePBX does, that is quite complicated and that I do not even remember exactly how it is done, there is a userloginlogout.agi , AMPUSER astdb entries to play with, etc. I think that your idea of how things should work is more like this freepbx mode. With this mode you track "extensions/users" and not "devices". To dial an extension you always dial the extension number, but it might rang a different device depending on where the user is logged in. As this behaviour is not something you can do with asterisk applications (like agentcallbacklogin or agentlogin) and it is just a total invention using dialplan, agi, astdb, etc, it is IMPOSSIBLE for any application to accommodate everyone's needs/dialplans/ideas/idiosyncrasy. Freepbx User & Device mode is one way to do it, and fop2 only supports that way. But in that mode you will only see user/extension buttons not directly related to a device.

                                    The label renaming in fop2 works by matching the extension and context for a Local queue member, or by agentlogin events. It renames ONLY on queue membership.

                                    I am not going to review all your screenshots, dialplan or ideas as I do not have the time and fop2 will probably not match or will work the way you want. I already mentioned the way fop2 works, and it makes absolute sense. I think you have to try to replicate the userevents and astdb entries for freepbx user&device mode to have something similar, where you see buttons for PEOPLE/EXTENSIONS, and they are not related to a particular device as the relation is done at the time they login into the system.

                                    best regards,

                                    1 Reply Last reply
                                    0

                                    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                    With your input, this post could be even better 💗

                                    Register Login
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    • Login

                                    • Don't have an account? Register

                                    • Login or register to search.
                                    Powered by NodeBB Contributors
                                    • First post
                                      Last post
                                    0
                                    • Categories
                                    • Recent
                                    • Tags
                                    • Popular
                                    • World
                                    • Users
                                    • Groups