Example #1
0
        private void ProcessSearchResult(string uin, MetaResponseSubType responseType, ByteStream data)
        {
            switch (responseType)
            {
            default:
                return;

            case MetaResponseSubType.SearchResult:
            case MetaResponseSubType.LastSearchResult:
            {
                // TODO Handle search result

                break;
            }
            }
        }
Example #2
0
        private void ProcessMetaDataReply(string uin, DataPacket dp, ByteStream data)
        {
            MetaResponseSubType responseSubType = (MetaResponseSubType)data.ReadUshortLE();

            switch (responseSubType)
            {
            case MetaResponseSubType.MetaProcessError:
                data.AdvanceOffset(1);     // skip status byte
                // get error message
                string errorDesc = data.ReadNullTerminatedString(data.GetByteCount() - data.CurrentPosition);
                SmsMessageError(this, "46", errorDesc);
                break;

            case MetaResponseSubType.ServerSmsResponse:
                this.ProcessServerSmsResponse(data);
                break;

            case MetaResponseSubType.SetPasswordAck:
                this.ProcessSetPasswordAck(dp, data);
                break;

            case MetaResponseSubType.ShortUserInfoResponse:
                this.ProcessShortUserInfoResponse(dp, data);
                break;

            case MetaResponseSubType.DirectoryQueryData:
            case MetaResponseSubType.DirectoryQueryResponse:
                this.ProcessDirectoryQueryResponse(dp, data);
                break;

            case MetaResponseSubType.DirectoryUpdateAck:
                this.ProcessDirectoryUpdateAck(dp, data);
                break;

            default:
                this.ProcessSearchResult(uin, responseSubType, data);
                break;
            }
        }