gmalsack

Member

Last active 13 years ago

  1. 13 years ago
    Tue Mar 8 17:55:54 2011
    gmalsack posted in FOP2 with agents.

    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

  2. Tue Mar 8 15:55:27 2011
    gmalsack posted in &inactive_line!1.

    I did restart the server, however I never did restart the browser or clear cache. I assumed all on the browser side was fine as the buttons were changing each time I would make a change, then restart the fop2 server service. However my assumption must have been inaccurate. Once I closed the browser (which I must say was on accident), the problem was gone.

    Sorry for the premature post. I do hope this helps someone else though!

    Greg

  3. Tue Mar 8 04:44:08 2011
    gmalsack posted in FOP2 with agents.

    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

  4. Tue Mar 8 04:30:10 2011
    gmalsack started the conversation &inactive_line!1.

    Hello,

    I just upgraded from 2.11 to 2.20. Now when I first log in, all seems normal. However once any of the extensions make a call, the line the call was made from shows the cid while they are on the call, however once the call ends, rather than going back to [Line 1 inactive] is says [&inactive_line!1].

    Thoughts?
    Greg

  5. Tue Mar 8 02:22:06 2011
    gmalsack posted in FOP2 with agents.

    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

  6. Tue Mar 8 01:52:50 2011
    gmalsack posted in FOP2 with agents.

    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

  7. Mon Feb 28 20:12:01 2011
    gmalsack posted in FOP2 with agents.

    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