Brickcom WFB-100A Megapixel Wireless Fixed Box Network Camera User Manual um FB 100A series en V2 05 03082010
Brickcom Corporation Megapixel Wireless Fixed Box Network Camera um FB 100A series en V2 05 03082010
Brickcom >
User Manual

















































































![73 Streaming API Streaming API allows applications to 1) set/get the IP Camera streaming setting 2) help users to view video streaming Data structures Data Structure Description SVideoFormatSetting The selected video codec format, encode rate, etc. SAudioFormatSetting The selected audio codec format, encode rate, etc. STransportSetting The selected network transport. SVideoSessionSetting The selected setting of video session used for streaming SAudioSessionSetting The selected setting of audio session used for streaming SChannelSetting The selected setting of media session (audio+video) used for aggregate streaming. SChannelSetSetting The set of available channels on this IPCam enum _ConstantBitrate{ VBR = 0, CBR, }; enum _bitrateKbps{ kbps_64 = 64, kbps_128 = 128, kbps_256 = 256, kbps_384 = 384, kbps_512= 512, kbps_768 = 768, kbps_1500 = 1500, kbps_2000 = 2000, kbps_4000 = 4000, kbps_6000 = 6000, kbps_8000 = 8000, kbps_10000 = 10000, kbps_12000 = 12000, kbps_15000 = 15000, }; /* SVideoFormatSetting */ typedef struct _videoFormatSetting { int sourceDevice; // reserved char codecType [16]; // char codecSubType [16]; int constantBitrate; // 0:enabled 1:disabled int bitrateInKbps; // Kbps int resolutionWidth;](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-82.png)
![74 int resolutionHeight; int quality; // JPEG Specific int frameRate; // FPS int gop; // (reserved) } SVideoFormatSetting; typedef struct _audioFormatSetting { int sourceDevice; // reserved char codecType[16]; // G711 char codecSubType[16]; // AUTO int numberOfChannel; // (reserved) Mono, Stereo =>0 int sampleRate; // (reserved) 8KHZ int frameIntervalMS; //(reserved) 10MS int sampleSizeBit; //(reserved)16 Bit } SAudioFormatSetting; /* SMetaFormatSetting */ typedef struct _metaFormatSetting { int mdAlarmEnabled; } SMetaFormatSetting; /* STransportSetting */ typedef struct _transportSetting { int multicastEnabled; char multicastAddress[16]; int multicastPort; int ttl; // 0-255 } STransportSetting; /* SVideoSessionSetting */ typedef struct _videoSessionSetting { int enabled; SVideoFormatSetting format; STransportSetting transport; } SVideoSessionSetting; /* SAudioSessionSetting */ typedef struct _audioSessionSetting { int enabled; SAudioFormatSetting format; STransportSetting transport; } SAudioSessionSetting; /* SMetaSessionSetting */ typedef struct _metaSessionSetting {](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-83.png)
![75 int enabled; SMetaFormatSetting format; STransportSetting transport; } SMetaSessionSetting; /* SChannelSetting */ typedef struct _channelSetting { int enabled; int index; // (Unique) 0: reserved. 1+: valid index char name[16]; int transportType; SVideoSessionSetting video; SAudioSessionSetting audio; SMetaSessionSetting meta; } SChannelSetting; /* SChannelSetting */ enum _TransportType { TRANSPORT_TYPE_RTSP_RTP=0, TRANSPORT_TYPE_RTP_ONLY=1, TRANSPORT_TYPE_HTTP=2, TRANSPORT_TYPE_MSN=3, }; typedef struct _channelSetting { int enabled; int index; // (Unique) 0: reserved. 1+: valid index char name[16]; int transportType; // enum _TransportType SVideoSessionSetting video; SAudioSessionSetting audio; SMetaSessionSetting meta; } SChannelSetting; typedef struct _SChannelSetList { int size; SChannelSetting channels[5]; }SChannelSetList; /* SChannelSetSetting */ typedef struct _channelSetSetting { SChannelSetList channelList; } SChannelSetSetting;](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-84.png)









![85 typedef struct _OsdPalette { int y; //Range:0~255 int Cb; //Range:0~255 int Cr; //Range:0~255 } SOsdPalette; typedef struct _OsdWindow { int x; //Range:depends on resolution int y; //Range:depends on resolution int transparent;//Range:0~3 } SOsdWindow; /* SVideoOverlaySetting */ typedef struct _VideoOverlaySetting { int useTimestamp; // 0: no timestamp, 1: use timestamp char displayString[50]; int useImage; // 0: no image, 1: use uploaded image. int enabled; SOsdPalette osdPalette1; SOsdPalette osdPalette2; SOsdWindow osdWindow1; SOsdWindow osdWindow2; } SVideoOverlaySetting; ActionEvents ActionEvent Description setWhiteBalance Set white balance getWhiteBalance Get white balance setBrightness Set brightness getBrightness Get brightness setColorSaturation Set Color Saturation getColorSaturation Get Color Saturation setMirrorFlip Set MirrorFlip getMirrorFlip Get MirrorFlipof setSharpness Set Sharpness getSharpness Get Sharpness setContrast Set Contrast getContrast Get Contrast setFrequency Set Frequency getFrequency Get Frequency setEffect Set Effect getEffect Get Effect setEnvMode Set EnvMode getEnvMode Get EnvMode setIRCutFilter Set IR cut Filter getIRCutFilter Get IR cut filter setIRLED Set IR LED](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-94.png)












![98 Network API Network API allows applications to set/get the network-related settings including IP address, WIFI network, etc. Data structures Data Structure Description SBasicNetworkSetting Basic network setting such as IP address, netmask, etc. SUPnPSetting UPnP setting for SSDP advertisement SDDNSSetting DDNS setting SEthernetSetting Ethernet (802.3?) setting SWIFISetting 802.11 WLAN setting SIPFilterSetting IPFilter setting /* SBasicNetworkSetting */ enum NetAddressType { NET_ADDRESS_TYPE_STATIC=0, NET_ADDRESS_TYPE_DHCP, NET_ADDRESS_TYPE_PPPOE, }; typedef struct _DHCPSetting { // Currently reserved } SDHCPSetting; typedef struct _PPPoESetting { char username[128]; char password[128]; } SPPPoESetting; typedef struct _BasicNetworkSetting { int addressType; // enum NetAddressType char ipv4Address[16]; char subnetMask[16]; char gatewayAddress[16]; char dnsAddress1[16]; char dnsAddress2[16]; SDHCPSetting dhcp; SPPPoESetting pppoe; // TBD: IPv6, …. } SBasicNetworkSetting; /* SUPnPSetting */ typedef struct _UPnPSetting { int enabled;](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-107.png)
![99 char upnpName[128]; } SUPnPSetting; /* SDDNSSetting */ enum ddnsServerType{ DYNDNS = 0, TZO, }; typedef struct _SDDNSEntry{ int wildcardEnabled;//0:disable 1:enable char username[128]; char password[128]; char hostname[128]; }SDDNSEntry; typedef struct _DDNSSetting { int dyndnsEnabled; int tzodnsEnabled; SDDNSEntry dyndns; SDDNSEntry tzodns; } SDDNSSetting; /* SEthernetSetting */ enum EthernetMediaType { ETHER_MEDIA_TYPE_AUTO=0, ETHER_MEDIA_TYPE_10_HALF_DUPLEX, ETHER_MEDIA_TYPE_10_FULL_DUPLEX, ETHER_MEDIA_TYPE_100_HALF_DUPLEX, ETHER_MEDIA_TYPE_100_FULL_DUPLEX, ETHER_MEDIA_TYPE_1000_FULL_DUPLEX, }; typedef struct _EthernetSetting { Int mediaType; // enum EthernetMediaType } SEthernetSetting; /* SWIFISetting */ enum WIFIWPA_algorithmType { WL_TKIP=0, WL_AES, WL_TKIP_AES, }; enum WIFIWEP__authenticationType { WL_OPEN=0, WL_SHARED,](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-108.png)

![101 typedef struct _SSWPS { int WPSMode; // enum WIFIWPSMode char PINCode[64]; }SWPS; typedef struct _SSWPA { int algorithmType; // enum WIFIWPA_algorithmType char sharedKey[64]; }SWPA; typedef struct _SSKeyentry { char encryptionKey[64]; }SKeyentry; typedef struct _SSEncryptionKeyList { int size; SKeyentry keyEntry[4]; }SEncryptionKeyList; typedef struct _SSWEP { int authenticationType; // enum WIFIWEP__authenticationType int defaultTransmitKeyIndex; int wepKeyLength; SEncryptionKeyList encryptionKeyList; }SWEP; //================= IEEE 802.1X ======================= //authenticationProtocolType enum IEEE_802_1x_authenticationProtocolType { WL_EAP_TLS=0, WL_EAP_TTLS, WL_EAP_PEAP, WL_EAP_FAST, WL_EAP_LEAP, }; //authenticationMethod enum IEEE_802_1x_authenticationMethod { WL_MSCHAP=0, WL_MSCHAPV2, WL_PAP, WL_EAP_MD5, }; //innerEAPProtocolType enum IEEE_802_1x_innerEAPProtocolType { WL_INNER_EAP_TLS=0, WL_EAP_OTP, };](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-110.png)
![102 typedef struct _IEEE_802_1xSetting { int enabled; int authenticationProtocolType; //enum authenticationProtocolType int innerTTLSAuthenticationMethod; //enum authenticationMethod int innerEAPProtocolType;//enum innerEAPProtocolType int validateServerEnabled; char userName[65]; char password[65]; char anonymousID[65]; int autoPACProvisioningEnabled; int caline; int clientline; int PACline; } SIEEE_802_1xSetting; typedef struct _WIFISetting { int enabled; int mode; // enum WIFIAccessMode int operationMode; // WIFIOperationMode int channel; // (0) Auto, int wmm; // 0:disabled 1:enabled char SSID[31]; int preamble; // enum WIFIPreambleType int rtsThreshold; // int fragmentationThreshold; int authentication; // enum WIFIAuthenticationType int channelBandWidth; // enum WIFIchannelBandWidth int securityMode; // enum WIFISecurityMode SWEP WEP; SWPA WPA; SWPS WPS; SIEEE_802_1xSetting wl_802_1x; } SWIFISetting; enum IPFilterPermissionType { Deny=0, Allow, }; typedef struct _SSFilterAddressEntry { int enabled; char startIP[16]; char endIP[16]; }SFilterAddressEntry; typedef struct _SSFilterAddressList { int size; SFilterAddressEntry filterEntry[16]; }SFilterAddressList; typedef struct _SSIPFilterSetting {](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-111.png)









![112System API System API allows applications to configure miscellaneous system settings not covered by any other category. These settings include Time, Syslog, and etc. // NOTE: In the future, we may switch to rsyslog instead of syslogd. Data structures Data Structure Description SDeviceInfo IP Camera device info STimeSetting Time setting SSyslogSetting Syslog setting SSystemStatus Structure containing system status info /* SDeviceInfo */ typedef struct _SSDeviceInfo { char chipVersion[65]; char sensorID[65]; char macAddress[17]; char firmwareVersion[65]; char firmwareReleasedDate[65]; char InternalName[65]; char ProductName[65]; char ModelNumber[16]; char CompanyName[32]; char Comments[128]; } SDeviceInfo; /* STimeSetting */ enum TimeConfigType { TIME_CONFIG_TYPE_NONE=0, TIME_CONFIG_TYPE_MANUAL, TIME_CONFIG_TYPE_NTP, }; // TODO: TBD. enum TimeZoneID { TIME_ZONE_MIN, TIME_ZONE_KWAJALEIN, TIME_ZONE_SAMOA, TIME_ZONE_HAWAII, TIME_ZONE_ALASKA, TIME_ZONE_LOS_ANGELES, TIME_ZONE_PHOENIX, TIME_ZONE_MEXICO_CITY, TIME_ZONE_NEW_YORK, TIME_ZONE_SANTIAGO,](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-121.png)
![113 TIME_ZONE_SAO_PAULO, TIME_ZONE_NORONHA_ISLAND, TIME_ZONE_PRAIA, TIME_ZONE_LONDON, TIME_ZONE_PARIS, TIME_ZONE_CAIRO, TIME_ZONE_MOSCOW, TIME_ZONE_DUBAI, TIME_ZONE_KARACHI, TIME_ZONE_DHAKA, TIME_ZONE_JAKARTA, TIME_ZONE_HONG_KONG, TIME_ZONE_TOKYO, TIME_ZONE_SYDNEY, TIME_ZONE_NOUMEA, TIME_ZONE_NewZealand, TIME_ZONE_MAX }; // Reserved for internal use... typedef struct _TimeZone { int id; // Time zone id. Char TZSyntax[128]; } STimeZone; typedef struct _TimeZoneList { int size; STimeZone timezone[60]; } STimeZoneList; typedef struct _ManualTimeSetting { int year; int month; int day; int hour; int minute; int second; } SManualTimeSetting; typedef struct _NTPTimeSetting { char ntpServerLoc1[100]; // IP address or FQDN of NTP server char ntpServerLoc2[100]; } SNTPTimeSetting; typedef struct _TimeSetting { int type; // enum TimeConfigType int enableDST; // Daylight saving. (0: disabled, 1: enabled) int timezoneID; // enum TimeZoneID](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-122.png)
![114 SManualTimeSetting manual; SNTPTimeSetting ntp; } STimeSetting; /* SSyslogSetting */ // Note, these values are taken from manpage for syslog (3). enum LogPriority { SLOG_EMERG=0, // system is unusable SLOG_ALERT, // action must be taken immediately SLOG_CRIT, // critical conditions SLOG_ERR, // error conditions SLOG_WARNING, // warning conditions SLOG_NOTICE, // normal, but significant, condition SLOG_INFO, // informational message SLOG_DEBUG, // debug-level message }; enum AddressFormatType { IP_TYPE, HOSTNAME_TYPE, }; Typedef struct _SyslogSetting { int localLogLevel; // Log with LogPriority value smaller than this is logged to local file. Int useRemoteLog; // 0: disabled, 1: enabled int addressingFormatType; char remoteServerAddress[128]; // IP address or FQDN of the syslog server int remoteServerPort; // Port number of the syslog server } SSyslogSetting; Typedef struct _systemStatus { // TBD } SSystemStatus;](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-123.png)




![119 enum UserPrivilegeType { USER_PRIVILEGE_VIEW=0, USER_PRIVILEGE_ADMIN, USER_PRIVILEGE_REMOTE_VIEW, }; /* SUserSetting */ typedef struct _userSetting { int index; char username[30]; // Unique key. char password[30]; int privilege; // Administration, Viewer } SUserSetting; \ /* SUserSetSetting */ typedef struct _userSetList { int size; SUserSetting users[10]; } SUserSetList; typedef struct _userSetSetting { SUserSetList userList; }SUserSetSetting; enum ProtocolMode{ PROTOCOL_HTTP=0, PROTOCOL_HTTPS, PROTOCOL_HTTP_HTTPS }; /* SHTTPSetting */ typedef struct _HTTPSetting { int enabled; int port; } SHTTPSetting; /* SHTTPSSetting */ typedef struct _HTTPSSetting { int enabled; int port; } SHTTPSSetting; typedef struct _FWUPGRADE{ char filename[64]; int status; } SFWUPGRADE; typedef struct _ConfigFile{](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-128.png)
![120 char filename[64]; } SConfigFile; /* SComplexityPWDSetting */ typedef struct _SSComplexityPWDSetting { int pwdRule1Enabled; int pwdRule2Enabled; int pwdRule3Enabled; }SComplexityPWDSetting; 6.1 addUser ActionEvent: addUser Request http://<IP>/cgi-bin/users.cgi action=add index= username=<username> password=<password> privilege=<privilege> Response Comment Method POST 6.2 deleteUser ActionEvent: deleteUser Request http://<IP>/cgi-bin/users.cgi action=delete username=<username> Response Comment Method POST 6.3 getUsers ActionEvent: getUsers Request http://<IP>/cgi-bin/users.cgi?action=getUsers Response Size= User1.index= User1.username= User1.password= User1.privilege= … User2.username= User2.password= User2.privilege= Comment Method GET](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-129.png)




![125 Motion detection API Motion detection API allows applications to 1) set/get the motion detection setting Data structures Data Structure Description SMotionDetectionSetting Basic motion detection setting. SMDList List of detection channels. SChannelMotionDetection Keep the information of detection channels. SMDRegionList List of detection regions. SMDRegion Keep the information of detection regions. /* SMotionDetection */ // Upper left coordinte (x,y), bottom right coordinate (x1, y1) typedef struct _MDRegionEntry { int enabled; int sensitivity; // 1-100. (low->high) int threshold; // 1-100. (low->high) int x; int y; int x1; int y1; } SMDRegionEntry; /*SMDRegionList*/ typedef struct _MDRegionList { int size; SMDRegionEntry regionEntry[5]; }SMDRegionList; typedef struct _MDEntry { int enabled; int channelIndex; //match stream channel index , (Unique) 0: reserved. 1+: valid index int detectionInterval; // The time interval to carry out another MD after previous one. SMDRegionList MDRList; } SMDEntry; typedef struct _MDList { int size; SMDEntry MDEntry[5];//match stream }SMDList;](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-134.png)



![129 Event API Event API allows applications to 1) set/get the event setting 2) set/get the notification setting Data structures Data Structure Description SEventPolicySetting General setting for events. SEventRuleSettingList List of event rules. SEventRuleSetting Details the setting of each event. SEventScheduleSetting Set up the schedule for triggering events SEmailSetting Details the setting of email. SMailingServerList List of email servers. SMailingServer Details the email servers. SFTPSetting Details the setting of ftp. SFTPServerList List of ftp servers. SFTPServer Details the ftp servers. SMediaInfo Specify the format of media. SambaServer Details the samba servers. enum _eventScheduleType { EVENT_SCHEDULE_ALWAYS=0, EVENT_SCHEDULE_WEEKLY=1, // TODO: TBD. EVENT_SCHEDULE_NEVER=2, }; typedef struct _eventScheduleSetting { int type; /* type of schedule */ char time[128]; /* Weekly schedule: Mon:0900-1700,Tue:0900-1700,Wed:0900-1700,Thu:0900-1700,Fri:0900-1700,Sat:0900-1700,Sun:0900-1700 */ } SEventScheduleSetting; #define ACTION_NAME_FTP "ftp" #define ACTION_NAME_EMAIL "smtp" #define ACTION_NAME_SAMBA "samba" typedef struct _eventRuleSetting { int index; //unique id int enabled; char name[10]; unsigned int eventID; /* type of event */ SEventScheduleSetting sched;](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-138.png)
![130 char actions[128]; /* list of references to action names separated by comma ',' */ } SEventRuleSetting; typedef struct _eventRuleSettingList { int size; SEventRuleSetting rule[10]; } SEventRuleSettingList; typedef struct _eventPolicySetting { SEventRuleSettingList ruleList; } SEventPolicySetting; enum AuthMOde{ PLAIN=0, LOGIN=1, LOGIN_TLS=2 }; typedef struct _mailingServer { unsigned int authenticationMode;// => enum { PLAIN , LOGIN , TLS_LOGIN } unsigned int portNo; //=> 25 unsigned char smtpServerHostName[64]; //=> smtp.gmail.com unsigned char accountName[64]; //=> XXXXXX unsigned char password[64]; //=> XXXXXX } SMailingServer; /* SEmailSetting */ typedef struct _emailSetting { unsigned char senderAddress[64]; //=> XXX@gmail.com unsigned char receiverAddress1[64]; //=> XXX@brickcom.com.tw // if NULL, disable unsigned char receiverAddress2[64]; //=> YYY@brickcom.com.tw // if NULL, disable unsigned char senderName[64]; //=> IPCAM unsigned char subject[64]; //=> "IPCAM Alert" unsigned int attachedVideoURLEnabled; //=> 0/1 unsigned int attachedSnapShotEnabled; //=> 0/1 unsigned int attachedVideoClipEnabled; //=> 0/1 SMailingServer primary; SMailingServer secondary; } SEmailSetting; /* SFTPServer */ typedef struct _ftpServer { unsigned int addressType; unsigned char hostname[64]; unsigned char ipAddress[32]; unsigned char ipv6Address[48]; unsigned int portNo;](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-139.png)
![131 unsigned char accountName[64]; unsigned char password[64]; unsigned int passiveModeEnabled; } SFTPServer; /* SFTPSetting */ typedef struct _ftpSetting { unsigned int uploadSnapShotEnabled; unsigned int uploadVideoClipEnabled; SFTPServer primary; SFTPServer secondary; } SFTPSetting; /* SAlarmMediaInfo */ typedef struct _mediaInfo { unsigned int snapShotEnabled; unsigned int videoClipEnabled; unsigned int preAlarmInterval; unsigned int postAlarmInterval; } SAlarmMediaInfo; enum EVENT_TYPE_DATA { EVENT_NONE, EVENT_MD, EVENT_IO, EVENT_NETWORK, EVENT_RESOURCE, EVENT_DAEMON, }; enum NOTIFICATION_METHOD_DATA{ NOTIFICATION_NONE, NOTIFICATION_FTP, NOTIFICATION_MAIL, NOTIFICATION_SAMBA, }; enum NOTIFICATION_RECURRENCE_DATA{ RECURRENCE_START, RECURRENCE_START_AND_END, RECURRENCE, }; typedef struct _SambaServer { unsigned char HostDns[32]; unsigned char IpAddress[32]; unsigned char Ipv6Address[48]; unsigned char UserName[16]; unsigned char Password[16]; unsigned int AddressType; unsigned char Preserve[12];](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-140.png)
![132 unsigned char workGroup[32]; unsigned char shareDIR[32]; } SambaServer; ////////////////////// // Event notification // ////////////////////// /* Event subscription */ enum _eventTransportMode { EVENT_TRANSPORT_MODE_PUSH=0, EVENT_TRANSPORT_MODE_PULL=1, }; /* Event transport type */ enum _eventTransportProtocol { EVENT_TRANSPORT_PROTOCOL_RESERVED=0, EVENT_TRANSPORT_PROTOCOL_UDP=1, EVENT_TRANSPORT_PROTOCOL_TCP=2, EVENT_TRANSPORT_PROTOCOL_HTTP=3, }; enum _eventTransportDataFormat { EVENT_TRANSPORT_DATA_FORMAT_BINARY=0, EVENT_TRANSPORT_DATA_FORMAT_TEXT=1, EVENT_TRANSPORT_DATA_FORMAT_XML=2, }; typedef struct _eventTransportSetting { int mode; /* Binary (host byte order) or text */ int protocol; /* UDP, TCP, HTTP */ int dataFormat; char destIPv4Address[16]; unsigned short destPort; } SEventTransportSetting; typedef struct _eventSubscriptionSetting { unsigned int id; /* Subscription ID (unique across system) */ unsigned int leaseTime; /* 0: always active, lease time in second */ // TODO: How to represent time.. SEventTransportSetting transport; } SEventSubscriptionSetting; typedef struct _eventSubscriptionSettingList { int size; SEventSubscriptionSetting subscription[10]; } SEventSubscriptionSettingList; ActionEvents](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-141.png)








![141 MSN API MSN API allows applications to 1) set/get the IP Camera MSNBot setting Data structures Data Structure Description SMsnbot Details the setting of MSNBot. SMsnBuddyList List of msn buddy. MsnBuddy Details the buddy information. /*MSNbot */ typedef struct _MsnBuddy{ int enabled; char account[128]; //msn account int isNotifiedAcnt; //0:no 1:yes }MsnBuddy; /*SMsnBuddyList */ typedef struct _MsnBuddyList { int size; MsnBuddy buddy[5]; }SMsnBuddyList; typedef struct _msnbotSetting{ char account[128]; char passwd[128]; char msnOpPasswd[128]; char friendlyName[128]; int webcamEnabled; //0:disable 1:enable int alarmNotifyEnabled; //0:disable 1:enable SMsnBuddyList bList; }SMsnbot; ActionEvents ActionEvent Description setMSNBot Set MSNBot setting getMSNBot Get MSNBot setting](https://usermanual.wiki/Brickcom/WFB-100A/User-Guide-1253439-Page-150.png)

