SOCKET IO docs

SOCKET.IO by HTTP://API.ILDAM.UZ

Echo configuration
              broadcaster: "socket.io", 
              host: 'https://api.ildam.uz:6001', 
              transports: ['websocket'],  
              auth: {
                headers: { 
                    Authorization: _TOKEN_
                    User-Agent-OS: [web, android, ios],
                    Device: ['web-application', client, executor, panel]
                    lang: [uz, ru]
                } 
              }
            

HTTP://API.ILDAM.UZ

Header params
                Authorization: _TOKEN_ 
                User-Agent-OS' : [web, android, ios]
                lang: [uz, ru]
                Content-Type: "application/json"
                Device: ['web-application', client, executor, panel]
                Device-Mode: [mobile, web-application]
                User-Agent-Version : [app_version],

            

Emloyee info
                Private Channel name: EmployeeInfo.{employee_id}
                listen: .employee-info
                events: [logout, ]
                message: ~
              
Executor switch configuration (executor online, ofline)
                Private Channel name: executor-online
                listen: .executor-switch
                events: success {true, false}
              

Order Channel configuration (create, update, status-update, change executor)
                Private Channel name: OrderChannel
                listen: .order-created
                events: [created, updated, change-status, change-executor]
              

Home detail channel
                Private Channel name: home-detail-channel
                listen: .home-detail
                details: [orders, executors, employees]
              

Executor Coords Channel (Executor send coods)
                Private Channel name: ExecutorCoordsChannel
                listen: .executor-coords
                events: [ created, removed ]
              

Order Executor Track
                Private Channel name: order-executor-track.{order_id}
                listen: .order-executor
                response: { order.track, executor.coords }
              

Support (Panel bilan chat)
                Join Channel name: support.{chat_id}
                listen: .support-chat
                data: []
                event: [
                  new - create new message
                  read - readed message
                  close - close chat
                ]
                
whisper: sending: this.$echo.whisper('typing', { user: FIO }); listen: this.$echo.listenForWhisper('typing', (e) => { this.typingUser = e.user; if (this.typingTimer) clearTimeout(this.typingTimer) this.typingTimer = setTimeout(()=>{ this.typingUser = false; },2000) })

Not Accepted Chats (qabul qilinmagan chatlar)
                Private Channel name: no_accepted_chats
                listen: .accepted-chats
                data: []
                event: [
                  no-accepted - qabul qilinmadi
                  accepted - qabul qilindi
                ]
              

Order chat (executor, client)
                Join Channel name: order_chat.{order_id}
                listen: .order-chat
                data: []
                event: [
                  new - create new message
                  read - readed message
                ]
                
whisper: sending: this.$echo.whisper('typing', { user: FIO }); listen: this.$echo.listenForWhisper('typing', (e) => { this.typingUser = e.user; if (this.typingTimer) clearTimeout(this.typingTimer) this.typingTimer = setTimeout(()=>{ this.typingUser = false; },2000) })

EfirEvent (Efirdagi zakazlarni boshqarish)
                Private Channel name: efir_channel.{region_id}
                listen: .efir-event
                events: [ created, removed, updated ]
              

ExecutorOrderEvent (executor current orderlarni boshqarish)
                Private Channel name: executor-order-channel.{id}
                listen: .executor-order
                events: [ new_order, remove_order, update_order ]
                message: [ 
                  * remove_order bolganda modal show da message ni chiqarish kerak 
                  * update_order [order malumotlar va statuslar almashuvi]
                ]
              

ExecutorInfo (executor haqida umumiy malumot beradi)
                Private Channel name: executorInfo.{id}
                listen: .executor-info
                data: []
              

Notifications
                Private Channel name: notify.executors.{executor_id}
                listen: .notify
                data: []
              

Support (Panel bilan chat)
                Join Channel name: support.{chat_id}
                listen: .support-chat
                data: []
                event: [
                  new - create new message
                  read - readed message
                  close - close chat
                ]
                
whisper: sending: this.$echo.whisper('typing', { user: FIO }); listen: this.$echo.listenForWhisper('typing', (e) => { this.typingUser = e.user; if (this.typingTimer) clearTimeout(this.typingTimer) this.typingTimer = setTimeout(()=>{ this.typingUser = false; },2000) })

Order chat (executor, client)
                Join Channel name: order_chat.{order_id}
                listen: .order-chat
                data: []
                event: [
                  new - create new message
                  read - readed message
                ]
                
whisper: sending: this.$echo.whisper('typing', { user: FIO }); listen: this.$echo.listenForWhisper('typing', (e) => { this.typingUser = e.user; if (this.typingTimer) clearTimeout(this.typingTimer) this.typingTimer = setTimeout(()=>{ this.typingUser = false; },2000) })

Client Order Status Event
                Private Channel name: client_order_status.{client_id}
                listen: .client-order-status
                events: [ 
                  new-order : "new order event (panel)", 
                  update-order : "order yangilanish event", 
                  change-status : "order status o'zgarish event", 
                  change-executor : "order executor o'zgarish event", 
                  order-waiting : "efir 5 minut kutilgandagi event", 
                  order-cancel : "efir dan 15 minut kutilgandagi event, order avtorazdacha orqali bekor qilinadi"
                ]
              

Order Executor Localtion data
                Private Channel name: current-order-executor.{executor_id}
                listen: .order-executor
                response: [lat, lng, heading, speed] 
              
Support (Panel bilan chat)
                Join Channel name: support.{chat_id}
                listen: .support-chat
                data: []
                event: [
                  new - create new message
                  read - readed message
                  close - close chat
                ]
                
whisper: sending: this.$echo.whisper('typing', { user: FIO }); listen: this.$echo.listenForWhisper('typing', (e) => { this.typingUser = e.user; if (this.typingTimer) clearTimeout(this.typingTimer) this.typingTimer = setTimeout(()=>{ this.typingUser = false; },2000) })

Order chat (executor, client)
                Join Channel name: order_chat.{order_id}
                listen: .order-chat
                data: []
                event: [
                  new - create new message
                  read - readed message
                ]
                
whisper: sending: this.$echo.whisper('typing', { user: FIO }); listen: this.$echo.listenForWhisper('typing', (e) => { this.typingUser = e.user; if (this.typingTimer) clearTimeout(this.typingTimer) this.typingTimer = setTimeout(()=>{ this.typingUser = false; },2000) })