第1の外部装置に対してデータが直接アップロードされる際に使用される所定の情報が一定であるか否かを判定する第1の判定手段と、前記第1の判定手段による判定結果に応じて、第2の外部装置から前記所定の情報を取得する取得手段と、前記取得手段により取得された前記所定の情報に基づいて、前記第1の外部装置に対してデータを直接アップロードするアップロード手段とを有し、前記取得手段は、前記第1の判定手段により前記所定の情報が一定であると判定された場合、前記第2の外部装置から前記所定の情報を再度取得しないことを特徴とする通信装置。前記第1の判定手段は、前記第1の外部装置に対する同一ログイン中において前記所定の情報が一定であるか否かを判定し、前記取得手段は、前記第1の判定手段により前記第1の外部装置に対する同一ログイン中において前記所定の情報が一定であると判定された場合、前記第2の外部装置から前記所定の情報を再度取得しないことを特徴とする請求項1に記載の通信装置。前記第1の外部装置に対してデータを直接アップロードする回数が2回目以降であるか否かを判定する第2の判定手段を更に有し、前記取得手段は、前記第2の判定手段により前記第1の外部装置に対してデータを直接アップロードする回数が2回目以降であると判定された場合、前記第2の外部装置から前記所定の情報を再度取得しないことを特徴とする請求項1又は2に記載の通信装置。前記第1の外部装置に対して複数のデータを連続して直接アップロードするか否かを判定する第3の判定手段を更に有し、前記取得手段は、前記第3の判定手段により前記第1の外部装置に対して複数のデータを連続して直接アップロードすると判定された場合、前記第2の外部装置から前記所定の情報を再度取得しないことを特徴とする請求項1乃至3の何れか1項に記載の通信装置。前記所定の情報は、前記第1の外部装置において認証に使用される情報であることを特徴とする請求項1乃至4の何れか1項に記載の通信装置。第1の外部装置に対してデータが直接アップロードされる際に使用される所定の情報が一定であるか否かを判定する判定ステップと、前記判定ステップによる判定結果に応じて、第2の外部装置から前記所定の情報を取得する取得ステップと、前記取得ステップにより取得された前記所定の情報に基づいて、前記第1の外部装置に対してデータを直接アップロードするアップロードステップとを有し、前記取得ステップは、前記判定ステップにより前記所定の情報が一定であると判定された場合、前記第2の外部装置から前記所定の情報を再度取得しないことを特徴とする通信装置の制御方法。第1の外部装置に対してデータが直接アップロードされる際に使用される所定の情報が一定であるか否かを判定する判定ステップと、前記判定ステップによる判定結果に応じて、第2の外部装置から前記所定の情報を取得する取得ステップと、前記取得ステップにより取得された前記所定の情報に基づいて、前記第1の外部装置に対してデータを直接アップロードするアップロードステップとをコンピュータに実行させ、前記取得ステップは、前記判定ステップにより前記所定の情報が一定であると判定された場合、前記第2の外部装置から前記所定の情報を再度取得しないことを特徴とするプログラム。しかしながら、上述した従来技術においては、通信装置は、外部サービスにコンテンツを直接アップロードすることが可能であると判断すると、中継装置から必要情報を毎回取得している。このように通信装置が中継装置から必要情報を毎回取得すると、中継装置は、必要情報を作成するために要する処理負荷、及び、必要情報を通信装置に送信するために要する通信負荷が増大するという問題があった。また通信装置は、中継装置から必要情報を取得するために時間を要する分、外部サービスにコンテンツを直接アップロードするにも時間を要するという問題があった。そこで、本発明の目的は、処理負荷及び通信負荷を軽減するとともに、データを直接アップロードするために要する時間を短縮することにある。本発明の通信装置は、第1の外部装置に対してデータが直接アップロードされる際に使用される所定の情報が一定であるか否かを判定する第1の判定手段と、前記第1の判定手段による判定結果に応じて、第2の外部装置から前記所定の情報を取得する取得手段と、前記取得手段により取得された前記所定の情報に基づいて、前記第1の外部装置に対してデータを直接アップロードするアップロード手段とを有し、前記取得手段は、前記第1の判定手段により前記所定の情報が一定であると判定された場合、前記第2の外部装置から前記所定の情報を再度取得しないことを特徴とする。本発明によれば、処理負荷及び通信負荷を軽減するとともに、データを直接アップロードするために要する時間を短縮することが可能となる。以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。図1は、本発明の実施形態に係る通信システムの構成を示す図である。携帯電話やデジタルカメラである通信装置10は、静止画データ及び動画データを記憶する機能と通信機能とを備えている。通信装置10の具体例としては、携帯電話、スマートフォン、デジタルカメラ、デジタルビデオカメラ、PC、ノートPC等が挙げられる。通信装置10は、中継装置20と外部サービス30との間で、HTTPHypertextTransferProtocol通信が可能である。また通信装置10は、中継装置20が提供する外部サービス中継機能を利用するため、HTTPに基づく中継プロトコル制御機能を備えている。なお、本実施形態では、外部サービス30へのアップロード対象として静止画データ、動画データを利用するが、これに限らず、音声データ、ファイル、メール、メッセージ等のデジタルデータにも適用可能である。また、本実施形態においては、通信装置10は、中継装置20及び外部サービス30との間でHTTP通信が可能であるが、これに限らず、その他の通信プロトコルによる通信にも適用可能である。例えば、FTPFileTransferProtocol、XMPPeXtensibleMessagingandPresenceProtocol、SIPSessionInitiationProtocol等にも適用可能である。さらに、通信装置10と中継装置20との間、通信装置10と外部サービス30との間で通信プロトコルはそれぞれ異なっていてもよい。中継装置20は、通信装置10と外部サービス30との間のアクセスを中継する。中継装置20の具体例としては、サーバ、PC、ノートPC、携帯電話、スマートフォン、セットトップボックス等が挙げられる。中継装置20は、通信装置10に対して外部サービス中継機能を提供するため、HTTPに基づく中継プロトコル制御機能を備えている。また中継装置20は、外部サービス30が提供する機能を利用するため、外部サービス30に関するHTTPに基づくプロトコル制御機能を備える。また図示しないが、外部サービス30は複数存在するため、中継装置20は外部サービス30毎にプロトコル制御機能を備えている。なお、本実施形態では、HTTPに基づく中継プロトコルを利用したが、上述したようにこれに限らず、HTTP以外の通信プロトコルを利用してもよい。外部サービス30は、コンテンツアップロード機能を提供するサービスである。外部サービス30の具体例としては、DLNADigitalLivingNetworkAllianceのメディアサーバ等が挙げられる。外部サービス30は、通信装置10又は中継装置20に対してコンテンツアップロード機能を提供するため、HTTPに基づくプロトコル制御機能を備えている。また図示しないが、外部サービス30は複数存在し、外部サービス毎にそれぞれプロトコルが異なる。しかし、これらのプロトコルは全てHTTPに基づくため、HTTPメッセージの送受信が可能であれば、外部サービス30が提供するコンテンツアップロード機能を利用することが可能となる。なお、外部サービス30は第1の外部装置、中継装置20は第2の外部装置に適用例である。ネットワーク40は、通信装置10、中継装置20及び外部サービス30を接続するネットワークである。ネットワーク40の具体例としては、有線LANLocalAreaNetwork、無線LAN、WANWideAreaNetwork、インターネット等が挙げられる。図2は、通信装置10のハードウェア構成を示す図である。CPUCentralProcessingUnit201は、通信装置10全体を制御する。ROMReadOnlyMemory202は、変更を必要としないプログラムやパラメタを格納する。RAMRandomAccessMemory203は、補助記憶装置204等から供給されるプログラムやデータを一時的に記憶する。補助記憶装置204は、静止画データや動画データ等のコンテンツ、中継装置20から取得したメッセージテンプレート情報等を記憶する。補助記憶装置204の具体例としては、メモリカード、ハードディスク等が挙げられる。表示部205は、ユーザが通信装置10を操作するためのGUIGraphicalUserInterfaceを表示する。操作部206は、ユーザが通信装置10を操作するための入力インタフェースである。通信インタフェース部207は、ネットワーク40に接続するためのインタフェースである。図3は、通信装置10の機能的な構成を示す図である。通信制御部301は、通信インタフェース部207を制御し、ネットワーク40との通信制御を行う。表示制御部302は、表示部205を制御し、通信装置10におけるGUIの表示制御を行う。操作制御部303は、操作部206を制御し、通信装置10におけるユーザからの操作入力を受け付ける。記憶制御部304は、補助記憶装置204を制御し、静止画データや動画データ等のコンテンツを記憶する。また記憶制御部304は、通信装置10において管理されるメッセージテンプレート情報を記憶する。制御部305は、通信装置10の機能的な構成301~312全体の制御を行う。中継装置アクセス制御部306は、中継装置20との通信接続を制御する。また、中継装置アクセス制御部306は、中継装置20が提供する外部サービス中継機能を利用するため、中継プロトコルの要求メッセージを作成し、通信制御部301を介して中継装置20に送信する。そして、中継装置アクセス制御部306は、中継装置20からの応答メッセージを通信制御部301を介して受信し、中継装置20における処理結果を解析する。なお、上述した中継装置20が提供する外部サービス中継機能とは、後述する、外部サービス情報取得機能、メッセージテンプレート情報取得機能及び外部サービスログイン機能等である。即ち、中継装置アクセス制御部306は、中継プロトコルにおけるこれらの機能に関する要求メッセージの作成及び応答メッセージの解析を行う。中継装置アクセス制御部306は、上述した機能に関する要求メッセージの作成及び応答メッセージの解析を行うが、これに限らず、これらを実現する機能の組み合わせでも実施可能である。直接アップロード判断部307は、通信装置10が外部サービス30にコンテンツを直接アップロードすることが可能であるか否かを判断する。直接アップロード判断部307は、直接アップロードすることが可能であるか否かを判断するために、中継装置アクセス制御部306によって中継装置20の外部サービス情報取得機能を利用し、外部サービス30に関する情報である外部サービス情報を取得する。外部サービス情報には、直接アップロードすることが可能であるか否かを示す直接アップロード可否情報が記述されている。直接アップロード判断部307は、直接アップロード可否情報を参照することにより、直接アップロードすることが可能であるか否かを判断する。アップロード回数判断部308は、外部サービス30にコンテンツを直接アップロードした回数をカウントする。本実施形態においては、中継装置アクセス制御部306が中継装置20の外部サービスログイン機能を利用し、通信装置10が外部サービス30にログインした後から直接アップロードのカウントを開始するものとする。上述したように、本実施形態では、直接アップロードのカウントを通信装置10が外部サービス30にログインした後から開始するが、これに限らない。例えば、通信装置10が外部サービス30からログアウトした後、アップロード回数判断部308は、それまでのカウント回数を記憶制御部304を介して補助記憶装置204に記憶させる。そして、通信装置10が外部サービス30に次回ログインすると、アップロード回数判断部308は、補助記憶装置204からカウント回数を取得し、そのカウント回数からカウントを再開するようにしてもよい。認証トークン情報判断部309は、中継装置20から取得されたメッセージテンプレート情報に記述される外部サービス認証トークン情報を参照する。そして、認証トークン情報判断部309は、外部サービス認証トークン情報に記述される認証トークン種別情報を参照することにより、外部サービス認証トークン情報が外部サービス30に対する同一ログイン中において一定であるか否かを判断する。なお、本実施形態では、認証トークン情報判断部309は、認証トークン情報が同一ログイン中において一定であるか否かを判断したが、これに限らない。例えば、認証トークン情報判断部309は、外部サービス30に対してログインしているか、ログアウトしているかに関わらず、認証トークン情報が一定であるか否かを判断してもよい。また、認証トークン情報判断部309は、外部サービス30にコンテンツが直接アップロードされる度に、認証トークン情報の更新が必要であるか否かを判断してもよい。連続アップロード判断部310は、外部サービス30にコンテンツを直接アップロードする際、複数のコンテンツを連続アップロードするか否かを判断する。複数のコンテンツを連続アップロードするか否かを判断するために、連続アップロード判断部310は、通信装置10のユーザがアップロード対象として選択したコンテンツの数を取得する。ユーザが選択したコンテンツの数が所定の数以上である場合、連続アップロード判断部310は、複数のコンテンツを連続アップロードすると判断する。一方、ユーザが選択したコンテンツの数が所定の数未満である場合、連続アップロード判断部310は、複数のコンテンツを連続アップロードしないと判断する。なお、本実施形態では、連続アップロード判断部310は、ユーザが選択したコンテンツの数によって連続アップロードを実行するか否かを判断したが、これに限らない。例えば、データサイズの大きなコンテンツを分割してアップロードする場合、連続アップロード判断部310は、連続アップロードを実行すると判断してもよい。メッセージテンプレート情報取得部311は、中継装置アクセス制御部306が中継装置20のメッセージテンプレート情報取得機能を利用し、メッセージテンプレート情報を取得する。直接アップロード制御部312は、ユーザによって指定されたコンテンツを外部サービス30に直接アップロードする。また直接アップロード制御部312は、外部サービス30にコンテンツを直接アップロードするために、メッセージテンプレート情報取得部311によって取得されたメッセージテンプレート情報に基づいて、直接アップロードを要求するためのメッセージ以下、直接アップロード要求メッセージと称すを作成する。そして直接アップロード制御部312は、通信制御部301を介して、外部サービス30に直接アップロード要求メッセージを送信する。直接アップロード制御部312は、通信制御部301が受信した外部サービス30からの直接アップロード要求メッセージに対する応答メッセージ以下、直接アップロード応答メッセージと称すを取得する。次に、直接アップロード制御部312は、メッセージテンプレート情報に基づいて直接アップロード応答メッセージを解析し、直接アップロードの結果を判断する。図4は、本実施形態におけるメッセージテンプレート情報のデータ構成例を示す図である。図4に示すように、メッセージテンプレート情報400は、外部サービス認証トークン情報401、外部サービス設定情報402、外部サービス要求ライン情報403、外部サービス要求ヘッダ情報404、外部サービス要求ボディ情報405、外部サービス応答ライン情報406、外部サービス応答ヘッダ情報407及び外部サービス応答ボディ情報408を含む。外部サービス認証トークン情報401は、外部サービス30に対するログイン時、外部サービス30が発行する認証トークン又は、セッションIDに関する情報であって、認証トークン情報、認証トークン種別情報等が記述される。認証トークン種別情報には、一定、ログイン中一定、一回のみが記述される。このように認証トークン種別情報に一定、ログイン中一定、一回のみを記述することにより、認証トークン情報の種別を識別可能にしている。但し、これに限らず、認証トークン情報中に属性情報を付与することによって、認証トークン情報の種別を識別可能にしてもよい。なお、一定は認証トークン情報が常に一定であることを表し、ログイン中一定は同一ログイン中において認証トークン情報が一定であることを表し、一回のみは一回のコンテンツのアップロード毎に認証トークン情報が変化することを表している。外部サービス設定情報402は、外部サービス30における通信装置10のユーザに関する設定情報である。外部サービス設定情報402の例としては、外部サービス30に対する直接アップロード時におけるアップロード先のアルバム情報等が挙げられる。外部サービス要求ライン情報403は、外部サービス30に対する要求メッセージにおけるHTTPの要求ライン部に関する情報である。即ち、外部サービス要求ライン情報403には、HTTPメソッド情報、外部サービス30のURIUniformResourceIdentifier情報、HTTPバージョン情報等が記述される。外部サービス要求ヘッダ情報404は、外部サービス30に対する要求メッセージにおけるHTTPの要求ヘッダ部に関する情報である。即ち、外部サービス要求ヘッダ情報404には、外部サービス30のホスト情報、外部サービス要求ボディ情報405のMIMEMultipurposeInternetMailExtensionタイプ情報等が記述される。外部サービス要求ボディ情報405は、外部サービス30に対する要求メッセージにおけるHTTPの要求ボディ部に関する情報である。即ち、外部サービス要求ヘッダ情報404には、コンテンツメタデータ、要求メッセージ中の要求ボディ部へのコンテンツデータの指定方法等が記述される。外部サービス応答ライン情報406は、外部サービス30からの応答メッセージにおけるHTTPの応答ライン部に関する情報である。即ち、外部サービス応答ライン情報406には、HTTPバージョン情報、応答ステータス情報、理由フレーズ情報、外部サービス30における処理結果の解析方法等が記述される。外部サービス応答ヘッダ情報407は、外部サービス30からの応答メッセージにおけるHTTPの応答ヘッダ部に関する情報である。即ち、外部サービス応答ヘッダ情報407には、外部サービス応答ボディ情報408のMIMEタイプ情報、外部サービス30における処理結果の解析方法等が記述される。外部サービス応答ボディ情報408は、外部サービス30からの応答メッセージにおけるHTTPの応答ボディ部に関する情報である。即ち、外部サービス応答ボディ情報408には、応答メッセージ中の応答ボディ部のコンテンツメタデータに関する解析方法等が記述されている。図5は、本実施形態におけるメッセージテンプレート情報のデータ構成の具体例を示す図である。即ち、messageTemplate要素500は、図4のメッセージテンプレート情報400に対応する。serviceAuthToken要素501は、図4の外部サービス認証トークン情報401に対応する。kind要素は、外部サービス認証トークン情報に記述される認証トークン種別情報に対応する。この属性値であるfixedLoginは、ログイン中一定を示している。serviceSetting要素502は、図4の外部サービス設定情報402に対応する。requestLine要素503は、図4の外部サービス要求ライン情報403に対応する。requestHeader要素504は、図4の外部サービス要求ヘッダ情報404に対応する。requestBody要素505は、図4の外部サービス要求ボディ情報405に対応する。本実施形態において、要求メッセージ中の要求ボディ部へのコンテンツの指定は、requestBody要素505の要素値に含まれる記号lt;filegt;によって行う。つまり、本実施形態では、この要素値の出現箇所が実際にアップロードされるコンテンツで置き換えられる。なお、本実施形態では、上述した方法によってコンテンツの置換位置を指定したが、これに限らず、他の記号を利用する、属性を利用する等によっても、コンテンツの置換位置を指定することができる。responseLine要素506は、図4の外部サービス応答ライン情報406に対応する。responseHeader要素507は、図4の外部サービス応答ヘッダ情報407に対応する。responseBody要素508は、図4の外部サービス応答ボディ情報408に対応する。図6は、通信装置10が外部サービス30に対して1回目の直接アップロードを実行する際のメッセージの送受信の例を示すシーケンスチャートである。M601において、通信装置10は、外部サービス30に関する外部サービス情報の取得を要求するためのメッセージ以下、外部サービス情報取得要求と称すを中継装置20に対して送信する。M602において、中継装置20は、通信装置10から外部サービス情報取得要求を受信すると、指定された外部サービス30に関する外部サービス情報を通信装置10に対して送信する。M603において、通信装置10は、中継装置20から外部サービス情報を受信すると、外部サービス30にログインを要求するためのメッセージ以下、外部サービスログイン要求と称すを中継装置20に対して送信する。M604において、中継装置20は、通信装置10から外部サービスログイン要求を受信すると、ログインを要求するためのメッセージ以下、ログイン要求と称すを外部サービス30に対して送信する。M605において、外部サービス30は、中継装置20からログイン要求を受信すると、当該ログイン要求に対する応答メッセージ以下、ログイン応答と称すを中継装置20に対して送信する。ここでは、外部サービス30に対するログインが成功し、認証トークン情報が外部サービス30から中継装置20に対して送信されたものとする。M606において、中継装置20は、外部サービス30からログイン応答を受信すると、通信装置10からの外部サービスログイン要求に対する応答メッセージ以下、外部サービスログイン応答と称すを通信装置10に対して送信する。M607において、通信装置10は、外部サービスログイン応答を受信すると、外部サービス30に対してコンテンツを直接アップロードすることが可能であるか否かを判断する。ここでは、直接アップロードが可能であると判断されたものとする。M608において、通信装置10は、外部サービス30にログインした後、1回目の直接アップロードであるか否かを判断する。ここでは、1回目の直接アップロードであると判断されたものとする。M609において、通信装置10は、外部サービス30に対する直接アップロードに関するメッセージテンプレート情報の取得を要求するためのメッセージ以下、メッセージテンプレート情報取得要求と称すを中継装置20に対して送信する。M610において、中継装置20は、通信装置10からメッセージテンプレート情報取得要求を受信すると、外部サービス30に対する直接アップロードに関するメッセージテンプレート情報400を作成する。即ち、中継装置20は、M605において外部サービス30から取得した認証トークン情報を、メッセージテンプレート情報400の外部サービス認証トークン情報401内に記述する。また中継装置20は、この認証トークン情報に基づいて、外部サービス認証トークン情報401内に認証トークン種別情報を記述する。ここ記述される認証トークン種別情報はログイン中一定であるものとする。M611において、中継装置20は、作成したメッセージテンプレート情報400を通信装置10に対して送信する。M612において、通信装置10は、中継装置20からメッセージテンプレート情報400を受信すると、当該メッセージテンプレート情報400を使用して、外部サービス30に対する直接アップロード要求メッセージを作成する。M613において、通信装置10は、直接アップロード要求メッセージを含むメッセージ以下、直接アップロード要求と称すを外部サービス30に対して送信する。M614において、外部サービス30は、通信装置10から直接アップロード要求を受信すると、直接アップロード要求に対応する応答メッセージ以下、直接アップロード応答と称すを通信装置10に送信する。M615において、通信装置10は、外部サービス30から直接アップロード応答を受信すると、メッセージテンプレート情報400に基づいて、直接アップロード応答に含まれる直接アップロード応答メッセージを解析する。図7は、通信装置10が外部サービス30に対して2回目以降の直接アップロードを実行する際のメッセージの送受信の例を示すシーケンスチャートである。M701において、通信装置10は、外部サービス30に対してコンテンツを直接アップロードすることが可能であるか否かを判断する。ここでは、直接アップロードが可能であると判断されたものとする。M702において、通信装置10は、外部サービス30にログインした後、1回目の直接アップロードであるか否かを判断する。ここでは、2回目以降の直接アップロードであると判断されたものとする。M703において、通信装置10は、M611において取得したメッセージテンプレート情報400内の外部サービス認証トークン情報401の認証トークン種別情報を参照し、認証トークン情報が同一ログイン中において一定であるか否かを判断する。ここでは、認証トークン情報が同一ログイン中において一定であると判断されたものとする。M704において、通信装置10は、外部サービス30に対する直接アップロードの際、複数のコンテンツを連続アップロードするか否かを判断する。ここでは、複数のコンテンツを連続アップロードすると判断されたものとする。M705において、通信装置10は、メッセージテンプレート情報400に基づき、外部サービス30に対する直接アップロード要求メッセージを作成する。M706において、通信装置10は、作成した直接アップロード要求メッセージに基づき、外部サービス30に対して直接アップロード要求を送信する。M707において、外部サービス30は、通信装置10から直接アップロード要求を受信すると、通信装置10に対して直接アップロード応答を送信する。M708において、通信装置10は、メッセージテンプレート情報400に基づいて、直接アップロード応答に含まれる直接アップロード応答メッセージを解析する。図8は、通信装置10が外部サービス30に対してログインする際に実行する処理を示すフローチャートである。ステップS801において、中継装置アクセス制御部306は、通信制御部301を介して、中継装置20に対して外部サービス情報取得要求を送信する。ステップS802において、中継装置アクセス制御部306は、通信制御部301を介して、中継装置20から外部サービス情報を受信する。ステップS803において、中継装置アクセス制御部306は、通信制御部301を介して、中継装置20に対して外部サービス30に対する外部サービスログイン要求を送信する。ステップS804において、中継装置アクセス制御部306は、通信制御部301を介して、中継装置20から外部サービスログイン応答を受信する。ステップS805において、アップロード回数判断部308は、外部サービス30に対する直接アップロードの回数をカウントするためのカウンタを初期化する。図9は、通信装置10が外部サービス30に対してコンテンツを直接アップロードする際に実行する処理を示すフローチャートである。ステップS901において、直接アップロード判断部307は、ステップS802において取得した外部サービス情報に記述される直接アップロード可否情報を参照する。もし、直接アップロード可否情報に直接アップロードが可能である旨が記述されていた場合、直接アップロード判断部307は、通信装置10が外部サービス30にコンテンツを直接アップロードすることが可能と判断し、処理はステップS903に移行する。一方、直接アップロード可否情報に直接アップロードすることが不可である旨が記述されていた場合、直接アップロード判断部307は、直接アップロードすることが不可と判断し、処理はステップS902に移行する。ステップS902において、中継装置アクセス制御部306は、中継装置20に対してコンテンツをアップロードを要求するためのメッセージ以下、中継アップロード要求と称すを送信する。そして、中継装置アクセス制御部306は、通信制御部301を介して、中継アップロード要求に対する応答メッセージを中継装置20から受信し、処理は終了する。ステップS903において、アップロード回数判断部308は、外部サービス30に対するコンテンツの直接アップロードの回数を確認する。もし、直接アップロードの回数が初回1回目である場合、処理はステップS904に移行する。一方、直接アップロードの回数が2回目以降である場合、処理はステップS905に移行する。なお、ステップS903は第2の判定手段の処理例である。ステップS904において、メッセージテンプレート情報取得部311は、中継装置アクセス制御部306を介して、中継装置20に対してメッセージテンプレート情報取得要求を送信する。そして、メッセージテンプレート情報取得部311は、中継装置20からメッセージテンプレート情報400を取得する。ステップS905において、認証トークン情報判断部309は、取得済みのメッセージテンプレート情報400に記述される外部サービス認証トークン情報401の認証トークン種別情報を参照する。そして認証トークン情報判断部309は、認証トークン種別情報が一定又はログイン中一定を示しているか否かを判定する。認証トークン種別情報が一定又はログイン中一定を示している場合、認証トークン情報判断部309は、同一ログイン中において認証トークン情報が一定であると判断し、処理はステップS906に進む。一方、認証トークン種別情報が一定又はログイン中一定を示していない場合本実施形態では、一回のみを示している場合、認証トークン情報判断部309は、同一ログイン中において認証トークン情報が一定ではないと判断し、処理はステップS904に進む。なお、ステップS905は第1の判定手段の処理例である。ステップS906において、連続アップロード判断部310は、ユーザによってアップロード対象として選択されたコンテンツの数を操作制御部303から取得し、複数のコンテンツを連続アップロードするか否かを判断する。選択されたコンテンツの数が所定の数以上である場合、連続アップロード判断部310は、当該選択されたコンテンツを連続アップロードすると判断し、処理はステップS907に進む。一方、選択されたコンテンツ数が所定の数未満である場合、連続アップロード判断部310は、当該選択されたコンテンツを連続アップロードしないと判断し、処理はステップS904に進む。なお、ステップS906は第3の判定手段の処理例である。ステップS907において、直接アップロード制御部312は、メッセージテンプレート情報400に基づいて、直接アップロード要求メッセージを作成する。ステップS908において、直接アップロード制御部312は、直接アップロード要求メッセージを含む直接アップロード要求を、通信制御部301を介して外部サービス30に対して送信する。ステップS909において、直接アップロード制御部312は、外部サービス30からの直接アップロード応答を、通信制御部301を介して取得する。そして、直接アップロード制御部312は、メッセージテンプレート情報400に基づいて、取得した直接アップロード応答に含まれる直接アップロード応答メッセージを解析し、直接アップロードの結果を判断する。以上説明したように、通信装置10は、外部サービス30への直接アップロードの際、メッセージテンプレート情報400内の外部サービス認証トークン情報401に記述される認証トークン情報が同一ログイン中において一定であるか否かを判断する。もし、同一ログイン中において認証トークン情報が一定である場合、通信装置10は、同一ログイン中にはメッセージテンプレート情報400を中継装置20より再度取得しない。これにより、中継装置20においては、メッセージテンプレート情報400を作成するために要する処理負荷、及び、メッセージテンプレート情報400を通信装置10に送信するために要する通信負荷を軽減することができる。また、通信装置10においては、外部サービス30への直接アップロードに要する時間を短縮することができるため、ユーザの利便性が向上する。さらに、通信装置10は、外部サービス30に対するログイン後、1回目の直接アップロードであるか否かを判断している。直接アップロードの回数が1回目である場合、ログイン後、認証トークン情報が外部サービス30から新規に発行されるため、通信装置10は中継装置20からメッセージテンプレート情報400を取得する。一方、直接アップロードの回数が2回目以降である場合、1回目に取得したメッセージテンプレート情報400中の外部サービス認証トークン情報401に記述される認証トークン情報は一定である。そのため、通信装置10は中継装置20からメッセージテンプレート情報400を再度取得しない。このように、通信装置10は好適なタイミングで中継装置20からメッセージテンプレート情報400を取得するため、外部サービス30に対するコンテンツの直接アップロード時における処理速度を向上させることができる。さらに、通信装置10は、外部サービス認証トークン情報401の認証トークン種別情報に基づいて、外部サービス30に対するログイン、ログアウトに関わらず認証トークン情報が一定であるか否かを判断してもよい。もし、ログイン、ログアウトに関わらず認証トークン種別が一定であれば、通信装置10は、メッセージテンプレート情報400を補助記憶装置204に記憶する。そして通信装置10は、次回の外部サービス30に対するログインの際、メッセージテンプレート情報400を中継装置20からではなく、補助記憶装置204から取得するようにする。これにより、中継装置20においては、メッセージテンプレート情報400を作成するために要する処理負荷、及び、メッセージテンプレート情報400を通信装置10に送信するために要する通信負荷をさらに軽減することができる。また、通信装置10においては、外部サービス30への直接アップロードに要する時間をさらに短縮することができるため、ユーザの利便性が向上する。また、本実施形態においては、通信装置10は、メッセージテンプレート情報400中の外部サービス認証トークン情報401に記述される認証トークン情報が同一ログイン中において一定であるか否かを判断したが、これに限らない。即ち、通信装置10は、メッセージテンプレート情報400中の402~408のいずれかに記述される情報が同一ログイン中において一定、又は、ログイン、ログアウトに関わらず一定であるか否かを判断してもよい。もし、メッセージテンプレート情報400中の402~408のいずれかに記述される情報が同一ログイン中において一定、又は、ログイン、ログアウトに関わらず一定である場合、通信装置10は、メッセージテンプレート情報400を再度取得しないようにする。さらに、中継装置20は、メッセージテンプレート情報400を作成する際、外部サービス30に対するコンテンツの直接アップロードの度に動的に可変となる部分文字列に対して、記号等を用いて識別可能にしてもよい。このとき、通信装置10は、メッセージテンプレート情報400中の上記記号の存在の有無を確認し、上記記号が存在すれば、静的に一定でない部分が存在すると判断して、メッセージテンプレート情報400を中継装置20より再度取得する。一方、上記記号が存在しなければ、通信装置10は、取得したメッセージテンプレート情報400は静的に一定であると判断として、再度取得しない。例えば、通信装置10と外部サービス30との間でデータ形式の異なる情報がメッセージテンプレート情報400中に存在する場合、当該情報を中継装置20において変換する必要がある。この場合、中継装置20は、メッセージテンプレート情報400中の当該情報に対して上記記号を付与し、通信装置10に対してメッセージテンプレート情報400の再取得を促す。これにより、通信装置10は、外部サービス認証トークン情報401以外の任意の情報に対しても、本実施形態の効果を得ることが可能となり、通信装置10の汎用性、拡張性が向上する。さらに、通信装置10は、様々なデータ形式をもつ複数の外部サービスに対しても、本実施形態の効果を得ることが可能となり、対応する外部サービスの増加によるユーザの利便性が向上する。また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムを、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータまたはCPUやMPU等がプログラムを読み出して実行する処理である。