hk-cinema-now-playing

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

HK Cinema Now Playing

香港影院正在上映影片

APIs

API接口

TMDB (Movie List)

TMDB(影片列表)

GET https://api.themoviedb.org/3/movie/now-playing?region=HK&language=zh-HK
Headers:
  • Authorization: Bearer ${TMDB_API_KEY}
  • accept: application/json
GET https://api.themoviedb.org/3/movie/now-playing?region=HK&language=zh-HK
请求头:
  • Authorization: Bearer ${TMDB_API_KEY}
  • accept: application/json

International Showtimes (Direct API - Recommended)

International Showtimes(直连API - 推荐使用)

GET https://api.internationalshowtimes.com/v5/showtimes?movie_id={tmdb_id}&countries=HK
Headers:
  • X-API-Key: ${IS_API_KEY}
  • OR
    Authorization: Token token=${IS_API_KEY}
Also supports
countries=HK
(plural) - both work.
GET https://api.internationalshowtimes.com/v5/showtimes?movie_id={tmdb_id}&countries=HK
请求头:
  • X-API-Key: ${IS_API_KEY}
  • Authorization: Token token=${IS_API_KEY}
同时支持
countries=HK
(复数形式)两种写法均有效。

RapidAPI Wrapper (Legacy - often broken)

RapidAPI封装(旧版 - 经常故障)

GET https://international-showtimes.p.rapidapi.com/v5/movies/{tmdb_id}/showtimes?countries=HK
Headers:
  • X-RapidAPI-Key: ${RAPIDAPI_KEY}
  • X-RapidAPI-Host: international-showtimes.p.rapidapi.com
Note: The RapidAPI endpoints frequently return errors. Use the direct API instead.
GET https://international-showtimes.p.rapidapi.com/v5/movies/{tmdb_id}/showtimes?countries=HK
请求头:
  • X-RapidAPI-Key: ${RAPIDAPI_KEY}
  • X-RapidAPI-Host: international-showtimes.p.rapidapi.com
注意:RapidAPI接口经常返回错误,建议使用直连API替代。

Cinema Chain Booking URLs (fallback when API doesn't provide booking_link)

影院连锁品牌预订链接(当API未提供booking_link时的备用方案)

Display Rules

展示规则

Step 1: List Movies

步骤1:列出影片

When user asks "what's playing in Hong Kong" or similar:
  • Call TMDB:
    GET /movie/now-playing?region=HK&language=zh-HK
  • Cache movie list with TMDB IDs
  • Show numbered list (Chinese title + English title from
    title
    and
    original_title
    fields)
Format:
香港上映中:

1. [電影中文名] ([英文名])
2. [電影中文名] ([英文名])
3. [電影中文名] ([英文名])
...
当用户询问“香港现在有什么电影上映”或类似问题时:
  • 调用TMDB接口:
    GET /movie/now-playing?region=HK&language=zh-HK
  • 缓存影片列表及对应的TMDB ID
  • 展示带编号的列表(包含中文片名 + 从
    title
    original_title
    字段获取的英文片名)
格式:
香港上映中:

1. [電影中文名] ([英文名])
2. [電影中文名] ([英文名])
3. [電影中文名] ([英文名])
...

Step 2: Movie Details (Brief)

步骤2:影片详情(简要版)

When user asks about a specific movie (e.g., "第一套詳細啲", "毒蛇律師2有咩上?"):
  1. Get TMDB movie ID from cached list
  2. Call TMDB:
    GET /movie/{id}?language=zh-HK
    for title + overview
  3. Call IS:
    GET /v5/showtimes?movie_id={tmdb_id}&countries=HK
  4. Extract unique cinemas (from
    showtimes[].cinema.name
    )
  5. Extract unique dates (from
    showtimes[].start_at
    , format as "3月14日")
Display format:
[TITLE]

簡介: [overview]

上映戲院:
- [Cinema 1]
- [Cinema 2]
- ...

上映日期:
- [Date 1]
- [Date 2]
- ...
当用户询问某部特定电影时(例如:“第一套詳細啲”、“毒蛇律師2有咩上?”):
  1. 从缓存列表中获取该电影的TMDB ID
  2. 调用TMDB接口:
    GET /movie/{id}?language=zh-HK
    以获取片名 + 简介
  3. 调用IS接口:
    GET /v5/showtimes?movie_id={tmdb_id}&countries=HK
  4. 提取独特影院信息(来自
    showtimes[].cinema.name
    字段)
  5. 提取独特日期信息(来自
    showtimes[].start_at
    字段,格式为“3月14日”)
展示格式:
[片名]

簡介: [影片简介]

上映戲院:
- [Cinema 1]
- [Cinema 2]
- ...

上映日期:
- [Date 1]
- [Date 2]
- ...

Step 3: Filtered Showtimes

步骤3:筛选后的场次信息

When user specifies a cinema OR date (e.g., "MCL", "聽日", "MCL聽日"):
  1. Parse user input to identify:
    • Cinema name (match against available cinemas)
    • Date (parse relative dates: "今日", "聽日", "後日", or specific date)
  2. Filter showtimes:
    • If cinema specified: show only that cinema's showtimes
    • If date specified: show only that date's showtimes
    • If both: apply both filters
  3. For each date, list all available times
Display format:
[Cinema Name] - [Movie Title]

[Date 1]: [Time 1] | [Time 2] | [Time 3]
[Date 2]: [Time 1] | [Time 2]
...

購票: [booking_link]
当用户指定影院或日期时(例如:“MCL”、“聽日”、“MCL聽日”):
  1. 解析用户输入以识别:
    • 影院名称(与可用影院名称匹配)
    • 日期(解析相对日期:“今日”、“聽日”、“後日”,或具体日期)
  2. 筛选场次:
    • 若指定影院:仅显示该影院的场次
    • 若指定日期:仅显示该日期的场次
    • 若两者都指定:同时应用两个筛选条件
  3. 按日期列出所有可用场次时间
展示格式:
[影院名称] - [影片片名]

[Date 1]: [Time 1] | [Time 2] | [Time 3]
[Date 2]: [Time 1] | [Time 2]
...

購票: [booking_link]

Step 4: Book Tickets

步骤4:预订票务

When user confirms a specific showtime (e.g., "聽日7點MCL", "我要買飛"):
  1. Extract cinema + date + time from user message
  2. Find matching showtime from cached data
  3. Use
    booking_link
    from API response
  4. Open booking URL in browser
Response format:
🎫 [Cinema Name] - [Date] [Time]

[booking_link]

[Open in browser]
If user says "book it" without details, ask which cinema and time they prefer.
当用户确认特定场次时(例如:“聽日7點MCL”、“我要買飛”):
  1. 从用户消息中提取影院 + 日期 + 时间信息
  2. 从缓存数据中找到匹配的场次
  3. 使用API响应中的
    booking_link
  4. 在浏览器中打开预订链接
回复格式:
🎫 [影院名称] - [日期] [时间]

[booking_link]

[在浏览器中打开]
若用户仅说“book it”而未提供具体信息,询问用户偏好的影院和场次时间。

Response Parsing

响应解析

From
/movie/now-playing
:
  • results[]
    : Array of movies
    • id
      : TMDB movie ID
    • title
      : Chinese title (zh-HK)
    • original_title
      : Original/English title
From
/movie/{id}
:
  • title
    : Chinese title
  • overview
    : Chinese synopsis
From
/movies/{tmdb_id}/showtimes
:
  • showtimes[]
    : Array of showtimes
    • cinema.id
      : Cinema ID
    • cinema.name
      : Cinema name (e.g., "MCL Cinemas", "百老匯")
    • start_at
      : ISO datetime (e.g., "2024-03-15T19:30:00+08:00")
    • booking_link
      : Direct ticket URL
    • movie_id
      : TMDB movie ID
来自
/movie/now-playing
接口:
  • results[]
    : 影片数组
    • id
      : TMDB影片ID
    • title
      : 中文片名(zh-HK)
    • original_title
      : 原片名/英文片名
来自
/movie/{id}
接口:
  • title
    : 中文片名
  • overview
    : 中文简介
来自
/movies/{tmdb_id}/showtimes
接口:
  • showtimes[]
    : 场次数组
    • cinema.id
      : 影院ID
    • cinema.name
      : 影院名称(例如:“MCL Cinemas”、“百老匯”)
    • start_at
      : ISO格式时间(例如:“2024-03-15T19:30:00+08:00”)
    • booking_link
      : 票务直达链接
    • movie_id
      : TMDB影片ID

Date Parsing (Cantonese/Chinese)

日期解析(粤语/中文)

  • "今日" = today
  • "聽日" = tomorrow
  • "後日" = day after tomorrow
  • "尋日" = yesterday
  • Or parse "3月15日" format
  • "今日" = 今天
  • "聽日" = 明天
  • "後日" = 后天
  • "尋日" = 昨天
  • 或解析“3月15日”格式的日期

Cinema Name Matching

影院名称匹配

Match user input against available cinema names (partial match OK):
  • "MCL" → "MCL Cinemas"
  • "百老匯" → "Broadway Circuit"
  • " Cinema City" → "Cinema City"
将用户输入与可用影院名称进行匹配(支持部分匹配):
  • "MCL" → "MCL Cinemas"
  • "百老匯" → "Broadway Circuit"
  • " Cinema City" → "Cinema City"

Error Handling

错误处理

  • If TMDB fails: "無法取得電影資料,請再試一次。"
  • If no showtimes: "暫時未有呢套戲既場次資料。"
  • If API errors: Show available data, note "部分場次資料可能不完整。"
  • 若TMDB接口调用失败:“無法取得電影資料,請再試一次。”
  • 若无场次信息:“暫時未有呢套戲既場次資料。”
  • 若API返回错误:展示已获取到的数据,并提示“部分場次資料可能不完整。”