qismo 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/Gemfile.lock +1 -1
 - data/lib/qismo/api.rb +72 -25
 - data/lib/qismo/client.rb +1 -1
 - data/lib/qismo/model.rb +2 -2
 - data/lib/qismo/version.rb +1 -1
 - metadata +1 -1
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 82fdfb3850c268372f3bb9a626923296a277365a2e418e39e77faee771a17f01
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 5e8e7248607487caab854fc59b45a4db35140b8f48392c3a52ef46fcb7d3b02f
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 6f18f2d1e90c3892e8793f8e48af1643a8c91fa94307197cab6660df6130aa7e9e6d28d9e8942e51fb9c538d0531e9532275bb728c2ae3cb05c57f539e4f6d0c
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 804e77fe38f0bb3e5da3859e2560bb74586960d8a7c96a9b723c0026ee2cfdf16ceca7531d05bc3ce7f9e3c748092daad112e458f66800b18776073e6711125e
         
     | 
    
        data/Gemfile.lock
    CHANGED
    
    
    
        data/lib/qismo/api.rb
    CHANGED
    
    | 
         @@ -8,22 +8,10 @@ module Qismo 
     | 
|
| 
       8 
8 
     | 
    
         
             
                  body = post("/api/v2/customer_rooms", opt)
         
     | 
| 
       9 
9 
     | 
    
         
             
                  Collection.new(
         
     | 
| 
       10 
10 
     | 
    
         
             
                    body.data.customer_rooms,
         
     | 
| 
       11 
     | 
    
         
            -
                    prev_page: body.meta 
     | 
| 
       12 
     | 
    
         
            -
                    next_page: body.meta 
     | 
| 
       13 
     | 
    
         
            -
                    prev_func: ->  
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
                        Collection.new([])
         
     | 
| 
       16 
     | 
    
         
            -
                      else
         
     | 
| 
       17 
     | 
    
         
            -
                        rooms(opt.merge(cursor_before: body.meta.cursor_before))
         
     | 
| 
       18 
     | 
    
         
            -
                      end
         
     | 
| 
       19 
     | 
    
         
            -
                    end,
         
     | 
| 
       20 
     | 
    
         
            -
                    next_func: -> do
         
     | 
| 
       21 
     | 
    
         
            -
                      if body.meta.cursor_after.nil? || body.meta.cursor_after.empty?
         
     | 
| 
       22 
     | 
    
         
            -
                        Collection.new([])
         
     | 
| 
       23 
     | 
    
         
            -
                      else
         
     | 
| 
       24 
     | 
    
         
            -
                        rooms(opt.merge(cursor_after: body.meta.cursor_after))
         
     | 
| 
       25 
     | 
    
         
            -
                      end
         
     | 
| 
       26 
     | 
    
         
            -
                    end,
         
     | 
| 
      
 11 
     | 
    
         
            +
                    prev_page: body.meta&.cursor_before,
         
     | 
| 
      
 12 
     | 
    
         
            +
                    next_page: body.meta&.cursor_after,
         
     | 
| 
      
 13 
     | 
    
         
            +
                    prev_func: -> { rooms(opt.merge(cursor_before: body.meta&.cursor_before)) },
         
     | 
| 
      
 14 
     | 
    
         
            +
                    next_func: -> { rooms(opt.merge(cursor_after: body.meta&.cursor_after)) },
         
     | 
| 
       27 
15 
     | 
    
         
             
                  )
         
     | 
| 
       28 
16 
     | 
    
         
             
                end
         
     | 
| 
       29 
17 
     | 
    
         | 
| 
         @@ -50,7 +38,17 @@ module Qismo 
     | 
|
| 
       50 
38 
     | 
    
         | 
| 
       51 
39 
     | 
    
         
             
                def room_broadcast_history(room_id, **opt)
         
     | 
| 
       52 
40 
     | 
    
         
             
                  body = get("/api/v2/customer_rooms/#{room_id}/broadcast_history", opt)
         
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
                  next_page = body.meta.page < body.meta.total_page ? (body.meta.page + 1) : nil
         
     | 
| 
      
 43 
     | 
    
         
            +
                  prev_page = body.meta.page > 1 ? (body.meta.page - 1) : nil
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
      
 45 
     | 
    
         
            +
                  Collection.new(
         
     | 
| 
      
 46 
     | 
    
         
            +
                    body.data.broadcast_logs,
         
     | 
| 
      
 47 
     | 
    
         
            +
                    next_page: next_page,
         
     | 
| 
      
 48 
     | 
    
         
            +
                    prev_page: prev_page,
         
     | 
| 
      
 49 
     | 
    
         
            +
                    next_func: -> { room_broadcast_history(opt.merge(page: next_page)) },
         
     | 
| 
      
 50 
     | 
    
         
            +
                    prev_func: -> { room_broadcast_history(opt.merge(page: prev_page)) },
         
     | 
| 
      
 51 
     | 
    
         
            +
                  )
         
     | 
| 
       54 
52 
     | 
    
         
             
                end
         
     | 
| 
       55 
53 
     | 
    
         | 
| 
       56 
54 
     | 
    
         
             
                def assign_agent(room_id, agent_id, **opt)
         
     | 
| 
         @@ -81,12 +79,24 @@ module Qismo 
     | 
|
| 
       81 
79 
     | 
    
         | 
| 
       82 
80 
     | 
    
         
             
                def other_agents(room_id, **opt)
         
     | 
| 
       83 
81 
     | 
    
         
             
                  body = get("/api/v2/admin/service/other_agents", opt.merge(room_id: room_id))
         
     | 
| 
       84 
     | 
    
         
            -
                  Collection.new( 
     | 
| 
      
 82 
     | 
    
         
            +
                  Collection.new(
         
     | 
| 
      
 83 
     | 
    
         
            +
                    body.data.agents,
         
     | 
| 
      
 84 
     | 
    
         
            +
                    prev_page: body.meta&.cursor_before,
         
     | 
| 
      
 85 
     | 
    
         
            +
                    next_page: body.meta&.cursor_after,
         
     | 
| 
      
 86 
     | 
    
         
            +
                    prev_func: -> { other_agents(opt.merge(cursor_before: body.meta&.cursor_before)) },
         
     | 
| 
      
 87 
     | 
    
         
            +
                    next_func: -> { other_agents(opt.merge(cursor_after: body.meta&.cursor_after)) },
         
     | 
| 
      
 88 
     | 
    
         
            +
                  )
         
     | 
| 
       85 
89 
     | 
    
         
             
                end
         
     | 
| 
       86 
90 
     | 
    
         | 
| 
       87 
91 
     | 
    
         
             
                def available_agents(room_id, **opt)
         
     | 
| 
       88 
92 
     | 
    
         
             
                  body = get("/api/v2/admin/service/available_agents", opt.merge(room_id: room_id))
         
     | 
| 
       89 
     | 
    
         
            -
                  Collection.new( 
     | 
| 
      
 93 
     | 
    
         
            +
                  Collection.new(
         
     | 
| 
      
 94 
     | 
    
         
            +
                    body.data.agents,
         
     | 
| 
      
 95 
     | 
    
         
            +
                    prev_page: body.meta&.cursor_before,
         
     | 
| 
      
 96 
     | 
    
         
            +
                    next_page: body.meta&.cursor_after,
         
     | 
| 
      
 97 
     | 
    
         
            +
                    prev_func: -> { available_agents(opt.merge(cursor_before: body.meta&.cursor_before)) },
         
     | 
| 
      
 98 
     | 
    
         
            +
                    next_func: -> { available_agents(opt.merge(cursor_after: body.meta&.cursor_after)) },
         
     | 
| 
      
 99 
     | 
    
         
            +
                  )
         
     | 
| 
       90 
100 
     | 
    
         
             
                end
         
     | 
| 
       91 
101 
     | 
    
         | 
| 
       92 
102 
     | 
    
         
             
                def new_session_webhook
         
     | 
| 
         @@ -114,16 +124,42 @@ module Qismo 
     | 
|
| 
       114 
124 
     | 
    
         
             
                end
         
     | 
| 
       115 
125 
     | 
    
         | 
| 
       116 
126 
     | 
    
         
             
                def agents(**opt)
         
     | 
| 
      
 127 
     | 
    
         
            +
                  if opt[:page].nil? || opt[:page].empty?
         
     | 
| 
      
 128 
     | 
    
         
            +
                    opt[:page] = 1
         
     | 
| 
      
 129 
     | 
    
         
            +
                  end
         
     | 
| 
      
 130 
     | 
    
         
            +
             
     | 
| 
       117 
131 
     | 
    
         
             
                  body = get("/api/v2/admin/agents", opt)
         
     | 
| 
       118 
     | 
    
         
            -
             
     | 
| 
      
 132 
     | 
    
         
            +
             
     | 
| 
      
 133 
     | 
    
         
            +
                  total_page = (body.meta.total_count.to_f / body.meta.per_page.to_f).ceil
         
     | 
| 
      
 134 
     | 
    
         
            +
                  next_page = opt[:page] < total_page ? (opt[:page] + 1) : nil
         
     | 
| 
      
 135 
     | 
    
         
            +
                  prev_page = opt[:page] > 1 ? (opt[:page] - 1) : nil
         
     | 
| 
      
 136 
     | 
    
         
            +
             
     | 
| 
      
 137 
     | 
    
         
            +
                  Collection.new(
         
     | 
| 
      
 138 
     | 
    
         
            +
                    body.data.agents,
         
     | 
| 
      
 139 
     | 
    
         
            +
                    next_page: next_page,
         
     | 
| 
      
 140 
     | 
    
         
            +
                    prev_page: prev_page,
         
     | 
| 
      
 141 
     | 
    
         
            +
                    next_func: -> { agents(opt.merge(page: next_page)) },
         
     | 
| 
      
 142 
     | 
    
         
            +
                    prev_func: -> { agents(opt.merge(page: prev_page)) },
         
     | 
| 
      
 143 
     | 
    
         
            +
                  )
         
     | 
| 
       119 
144 
     | 
    
         
             
                end
         
     | 
| 
       120 
145 
     | 
    
         | 
| 
       121 
146 
     | 
    
         
             
                def agents_by_ids(*ids)
         
     | 
| 
       122 
     | 
    
         
            -
                  get("/api/v1/admin/agents/get_by_ids", ids: ids).data
         
     | 
| 
      
 147 
     | 
    
         
            +
                  get("/api/v1/admin/agents/get_by_ids", **{ "ids[]": ids }).data
         
     | 
| 
       123 
148 
     | 
    
         
             
                end
         
     | 
| 
       124 
149 
     | 
    
         | 
| 
       125 
     | 
    
         
            -
                def  
     | 
| 
       126 
     | 
    
         
            -
                  get("/api/v2/admin/agents/by_division", opt.merge(division_ids: division_ids)) 
     | 
| 
      
 150 
     | 
    
         
            +
                def agents_by_divisions(*division_ids, **opt)
         
     | 
| 
      
 151 
     | 
    
         
            +
                  body = get("/api/v2/admin/agents/by_division", opt.merge({ "division_ids[]": division_ids }))
         
     | 
| 
      
 152 
     | 
    
         
            +
             
     | 
| 
      
 153 
     | 
    
         
            +
                  next_page = body.meta.page < body.meta.total_page ? (body.meta.page + 1) : nil
         
     | 
| 
      
 154 
     | 
    
         
            +
                  prev_page = body.meta.page > 1 ? (body.meta.page - 1) : nil
         
     | 
| 
      
 155 
     | 
    
         
            +
             
     | 
| 
      
 156 
     | 
    
         
            +
                  Collection.new(
         
     | 
| 
      
 157 
     | 
    
         
            +
                    body.data,
         
     | 
| 
      
 158 
     | 
    
         
            +
                    next_page: next_page,
         
     | 
| 
      
 159 
     | 
    
         
            +
                    prev_page: prev_page,
         
     | 
| 
      
 160 
     | 
    
         
            +
                    next_func: -> { agents_by_divisions(opt.merge(page: next_page)) },
         
     | 
| 
      
 161 
     | 
    
         
            +
                    prev_func: -> { agents_by_divisions(opt.merge(page: prev_page)) },
         
     | 
| 
      
 162 
     | 
    
         
            +
                  )
         
     | 
| 
       127 
163 
     | 
    
         
             
                end
         
     | 
| 
       128 
164 
     | 
    
         | 
| 
       129 
165 
     | 
    
         
             
                def agent(agent_id)
         
     | 
| 
         @@ -135,8 +171,19 @@ module Qismo 
     | 
|
| 
       135 
171 
     | 
    
         
             
                end
         
     | 
| 
       136 
172 
     | 
    
         | 
| 
       137 
173 
     | 
    
         
             
                def wa_broadcast_templates(**opt)
         
     | 
| 
       138 
     | 
    
         
            -
                  body = get("/api/ 
     | 
| 
       139 
     | 
    
         
            -
             
     | 
| 
      
 174 
     | 
    
         
            +
                  body = get("/api/v3/admin/hsm", opt)
         
     | 
| 
      
 175 
     | 
    
         
            +
             
     | 
| 
      
 176 
     | 
    
         
            +
                  meta = body.meta
         
     | 
| 
      
 177 
     | 
    
         
            +
                  next_page = meta.page < meta.total_page ? (meta.page + 1) : nil
         
     | 
| 
      
 178 
     | 
    
         
            +
                  prev_page = meta.page > 1 ? (meta.page - 1) : nil
         
     | 
| 
      
 179 
     | 
    
         
            +
             
     | 
| 
      
 180 
     | 
    
         
            +
                  Collection.new(
         
     | 
| 
      
 181 
     | 
    
         
            +
                    body.data.hsm_templates,
         
     | 
| 
      
 182 
     | 
    
         
            +
                    next_page: next_page,
         
     | 
| 
      
 183 
     | 
    
         
            +
                    prev_page: prev_page,
         
     | 
| 
      
 184 
     | 
    
         
            +
                    next_func: -> { wa_broadcast_templates(opt.merge(page: next_page)) },
         
     | 
| 
      
 185 
     | 
    
         
            +
                    prev_func: -> { wa_broadcast_templates(opt.merge(page: prev_page)) },
         
     | 
| 
      
 186 
     | 
    
         
            +
                  )
         
     | 
| 
       140 
187 
     | 
    
         
             
                end
         
     | 
| 
       141 
188 
     | 
    
         | 
| 
       142 
189 
     | 
    
         
             
                def send_wa_outbound(**opt)
         
     | 
    
        data/lib/qismo/client.rb
    CHANGED
    
    
    
        data/lib/qismo/model.rb
    CHANGED
    
    
    
        data/lib/qismo/version.rb
    CHANGED