| 175 | | public function channelStatusUpdate(channel:String, status:String, callback:Function):void { |
| 176 | | var param:Object = { |
| 177 | | "body": status, |
| 178 | | "source": "wasaco" |
| 179 | | }; |
| 180 | | _post("/channel_message/update.json?name_en=" + channel, param, callback); |
| | 175 | public function channelStatusUpdate(channel:String, status:String, image:*, callback:Function):void { |
| | 176 | if (image) { |
| | 177 | var multipart:MultiPartData = new MultiPartData(); |
| | 178 | var req:URLRequest = new URLRequest(); |
| | 179 | var loader:URLLoader = new URLLoader(); |
| | 180 | var bytes:ByteArray; |
| | 181 | var bmpData:BitmapData; |
| | 182 | var encoder:IImageEncoder = new PNGEncoder();//mx.graphics.codec.PNGEncoderはFlex3のコンポーネントです。 |
| | 183 | |
| | 184 | bmpData = new BitmapData(image.width, image.height); |
| | 185 | bmpData.draw(image); |
| | 186 | bytes = encoder.encode(bmpData); |
| | 187 | |
| | 188 | //リクエストのボディーを作成 |
| | 189 | multipart.addString('body', status); |
| | 190 | multipart.addString('source', 'wasaco'); |
| | 191 | multipart.addBynary('image', bytes, 'img.png', encoder.contentType); |
| | 192 | |
| | 193 | //リクエストの作成 |
| | 194 | req.url = api_url + '/channel_message/update.json?name_en=' + channel; |
| | 195 | req.method = URLRequestMethod.POST; |
| | 196 | var headers:Array = new Array( |
| | 197 | new URLRequestHeader("Authorization", "Basic " + getCredential()), |
| | 198 | new URLRequestHeader("Content-Type", "multipart/form-data, boundary=" + multipart.boundary) |
| | 199 | ); |
| | 200 | req.requestHeaders = headers; |
| | 201 | req.data = multipart.data; |
| | 202 | |
| | 203 | loader.addEventListener(Event.COMPLETE, callback); |
| | 204 | loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); |
| | 205 | loader.load(req); |
| | 206 | } else { |
| | 207 | var param:Object = { |
| | 208 | "body": status, |
| | 209 | "source": "wasaco" |
| | 210 | }; |
| | 211 | _post("/channel_message/update.json?name_en=" + channel, param, callback); |
| | 212 | } |