Documentation ¶
Index ¶
- Constants
- func NewContext(ctx context.Context, apiKey string) context.Context
- type Client
- type DialogueRequest
- type DialogueResponse
- type DialogueService
- type Genre
- type KnowledgeQARequest
- type KnowledgeQAResponse
- type KnowledgeQAService
- type ResponseCode
- type TrendContentsRequest
- type TrendContentsResponse
- type TrendGenreRequest
- type TrendGenreResponse
- type TrendRelatedRequest
- type TrendRelatedResponse
- type TrendSearchRequest
- type TrendSearchResponse
- type TrendService
- func (t *TrendService) GetContents(req TrendContentsRequest) (*TrendContentsResponse, error)
- func (t *TrendService) GetGenre(req TrendGenreRequest) (*TrendGenreResponse, error)
- func (t *TrendService) GetRelated(req TrendRelatedRequest) (*TrendRelatedResponse, error)
- func (t *TrendService) GetSearch(req TrendSearchRequest) (*TrendSearchResponse, error)
- func (d *TrendService) WithContext(ctx context.Context) *TrendService
Constants ¶
const ( // TrendGenreURL docomoAPIのトレンドAPIのジャンル情報の取得 TrendGenreURL = "/webCuration/v3/genre" // TrendContentsURL docomoAPIのトレンドAPIの記事取得 docs: https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_docs_id=24#tag01 TrendContentsURL = "/webCuration/v3/contents" // TrendSearchURL docomoAPIのトレンドAPIのキーワード検索 docs: https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_docs_id=25#tag01 TrendSearchURL = "/webCuration/v3/search" // TrendRelatedURL docomoAPIのトレンドAPIの関連記事取得 docs: https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_docs_id=109#tag01 TrendRelatedURL = "/webCuration/v3/relatedContents" )
const (
// DialogueURL docomoAPIの雑談APIのmethod
DialogueURL = "/dialogue/v1/dialogue"
)
const (
// DomainURL DocomoAPIのhost
DomainURL = "https://api.apigw.smt.docomo.ne.jp"
)
const (
// KnowledgeQAURL docomoAPIの知識Q&Aのmethod
KnowledgeQAURL = "/knowledgeQA/v1/ask"
)
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Client ¶
type Client struct { Trend *TrendService KnowledgeQA *KnowledgeQAService Dialogue *DialogueService // contains filtered or unexported fields }
Client DocomoAPIへのpostやgetを行うクライアント
func FromContext ¶
type DialogueRequest ¶
type DialogueRequest struct { Utt *string `json:"utt"` Context *string `json:"context"` Nickname *string `json:"nickname"` NicknameYomi *string `json:"nickname_y"` Sex *string `json:"sex"` Bloodtype *string `json:"bloodtype"` BirthdateY *int `json:"birthdateY"` BirthdateM *int `json:"birthdateM"` BirthdateD *int `json:"birthdateD"` Age *int `json:"age"` Constellations *string `json:"constellations"` Place *string `json:"place"` Mode *string `json:"mode"` CharactorID *int `json:"t"` }
DialogueRequest 雑談APIのリクエスト Mode dialog or srtr CharactorID なし:デフォルト 20:関西弁 30:あかちゃん
type DialogueResponse ¶
type DialogueResponse struct { Context string `json:"context"` Da string `json:"da"` Mode string `json:"mode"` Utt string `json:"utt"` Yomi string `json:"yomi"` // error時 RequestError struct { PolicyException struct { MessageID string `json:"messageId"` Text string `json:"text"` } `json:"policyException"` } `json:"requestError"` }
DialogueResponse 雑談APIのレスポンス
type DialogueService ¶
type DialogueService struct {
// contains filtered or unexported fields
}
DialogueService API docs: https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_docs_id=5
func (*DialogueService) Get ¶
func (d *DialogueService) Get(req DialogueRequest, refreshContext bool) (*DialogueResponse, error)
Get 雑談APIを呼び出して結果を取得する. refreshContextがtrueの場合、DocomoClientのContextを更新する
func (*DialogueService) SetContext ¶
func (d *DialogueService) SetContext(context string)
SetContext setter DocomoClient context.
func (*DialogueService) WithContext ¶
func (d *DialogueService) WithContext(ctx context.Context) *DialogueService
type Genre ¶
type Genre struct { Description string `json:"description"` GenreID int `json:"genreId"` Title string `json:"title"` }
Genre ジャンル情報
type KnowledgeQARequest ¶
type KnowledgeQARequest struct {
QAText string `json:"q"`
}
KnowledgeQARequest 知識Q&Aのリクエスト
type KnowledgeQAResponse ¶
type KnowledgeQAResponse struct { Code ResponseCode `json:"code"` Answers []struct { AnswerText string `json:"answerText"` LinkText string `json:"linkText"` LinkURL string `json:"linkUrl"` Rank string `json:"rank"` } `json:"answers"` Message struct { TextForDisplay string `json:"textForDisplay"` TextForSpeech string `json:"textForSpeech"` } `json:"message"` }
KnowledgeQAResponse 知識Q&Aのレスポンス
type KnowledgeQAService ¶
type KnowledgeQAService struct {
// contains filtered or unexported fields
}
KnowledgeQAService API docs: https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_docs_id=6
func (*KnowledgeQAService) Get ¶
func (q *KnowledgeQAService) Get(req KnowledgeQARequest) (*KnowledgeQAResponse, error)
Get docomoAPIを呼び出して結果を返す
func (*KnowledgeQAService) WithContext ¶
func (d *KnowledgeQAService) WithContext(ctx context.Context) *KnowledgeQAService
type ResponseCode ¶
type ResponseCode string
ResponseCode 知識Q&Aのレスポンスコード
const ( // OkResponseCode 質問結果あり OkResponseCode ResponseCode = "S020000" // NoResponseCode 質問結果なし NoResponseCode ResponseCode = "S020011" )
type TrendContentsRequest ¶
type TrendContentsRequest struct { // 必須 GenreID *int `json:"genreId"` // ja: 日本語(default)、en: 英語 Lang *string `json:"lang"` // 記事一覧の開始番号を指定(1以上999999以下の整数)。デフォルトは1 StartNo *int `json:"s"` // カテゴリ内の記事一覧の取得件数を指定(0以上50以下の整数)。デフォルトは1 Num *int `json:"n"` }
TrendContentsRequest 記事取得リクエスト
type TrendContentsResponse ¶
type TrendContentsResponse struct { ArticleContents []struct { ContentData struct { Body string `json:"body"` CreatedDate string `json:"createdDate"` ImageSize struct { Height float64 `json:"height"` Width float64 `json:"width"` } `json:"imageSize"` ImageURL string `json:"imageUrl"` LinkURL string `json:"linkUrl"` SourceDomain string `json:"sourceDomain"` SourceName string `json:"sourceName"` Title string `json:"title"` } `json:"contentData"` ContentID float64 `json:"contentId"` ContentType float64 `json:"contentType"` GenreID float64 `json:"genreId"` } `json:"articleContents"` IssueDate string `json:"issueDate"` ItemsPerPage float64 `json:"itemsPerPage"` StartIndex float64 `json:"startIndex"` TotalResults float64 `json:"totalResults"` }
TrendContentsResponse 記事取得レスポンス
type TrendGenreRequest ¶
type TrendGenreRequest struct { // ja: 日本語(default)、en: 英語 Lang *string `json:"lang"` }
TrendGenreRequest ジャンル情報取得のリクエスト
type TrendGenreResponse ¶
type TrendGenreResponse struct {
Genre []Genre `json:"genre"`
}
TrendGenreResponse ジャンル情報取得のレスポンス
type TrendRelatedRequest ¶
type TrendRelatedRequest struct { // 関連記事を取得する記事ID 必須 ContentID *int `json:"contentId"` }
TrendRelatedRequest 関連記事取得リクエスト
type TrendRelatedResponse ¶
type TrendRelatedResponse struct { ArticleContents []struct { ContentData struct { Body string `json:"body"` CreatedDate string `json:"createdDate"` ImageSize struct { Height int `json:"height"` Width int `json:"width"` } `json:"imageSize"` ImageURL string `json:"imageUrl"` LinkURL string `json:"linkUrl"` SourceDomain string `json:"sourceDomain"` SourceName string `json:"sourceName"` Title string `json:"title"` } `json:"contentData"` ContentID int `json:"contentId"` ContentType int `json:"contentType"` GenreID int `json:"genreId"` RelatedContents string `json:"relatedContents"` } `json:"articleContents"` TotalResults int `json:"totalResults"` }
TrendRelatedResponse 関連記事取得レスポンス
type TrendSearchRequest ¶
type TrendSearchRequest struct { // ジャンルID GenreID *int `json:"genreId"` // キーワード(UTF-8) Keyword *string `json:"keyword"` // ja: 日本語(default)、en: 英語 Lang *string `json:"lang"` // 記事一覧の開始番号を指定(1以上999999以下の整数)。デフォルトは1 StartNo *int `json:"s"` // カテゴリ内の記事一覧の取得件数を指定(0以上50以下の整数)。デフォルトは1 Num *int `json:"n"` }
TrendSearchRequest キーワード検索リクエスト
type TrendSearchResponse ¶
type TrendSearchResponse struct { ArticleContents []struct { ContentData struct { Body string `json:"body"` CreatedDate string `json:"createdDate"` ImageSize struct { Height int `json:"height"` Width int `json:"width"` } `json:"imageSize"` ImageURL string `json:"imageUrl"` LinkURL string `json:"linkUrl"` SourceDomain string `json:"sourceDomain"` SourceName string `json:"sourceName"` Title string `json:"title"` } `json:"contentData"` ContentID int `json:"contentId"` ContentType int `json:"contentType"` GenreID int `json:"genreId"` } `json:"articleContents"` IssueDate string `json:"issueDate"` ItemsPerPage int `json:"itemsPerPage"` StartIndex int `json:"startIndex"` TotalResults int `json:"totalResults"` }
TrendSearchResponse キーワード検索レスポンス
type TrendService ¶
type TrendService struct {
// contains filtered or unexported fields
}
TrendService API docs: https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_docs_id=26
func (*TrendService) GetContents ¶
func (t *TrendService) GetContents(req TrendContentsRequest) (*TrendContentsResponse, error)
GetContents 指定したジャンルの記事を取得する.
func (*TrendService) GetGenre ¶
func (t *TrendService) GetGenre(req TrendGenreRequest) (*TrendGenreResponse, error)
GetGenre ジャンル情報の取得する.
func (*TrendService) GetRelated ¶
func (t *TrendService) GetRelated(req TrendRelatedRequest) (*TrendRelatedResponse, error)
GetRelated 関連記事取得
func (*TrendService) GetSearch ¶
func (t *TrendService) GetSearch(req TrendSearchRequest) (*TrendSearchResponse, error)
GetSearch キーワード検索
func (*TrendService) WithContext ¶
func (d *TrendService) WithContext(ctx context.Context) *TrendService