public static boolean pushMessage(EntityManager manager,
			String destinationMobileHash,String currentPlayer, Game game) {
		if(currentPlayer.equals(destinationMobileHash))
		{
			return false;
		}
		try {

			String header = "";
			String board = header;
			String footer = header;
			String form_link="/moveServlet";
			switch (game.getMovesCount()) {
			case 0: {
				if (game.getBlack().equals(destinationMobileHash)) {
					header = "Your Challenge accepted by "
							+ manager.find(ChessUser.class, game.getBlack())
									.getUserName()
							+ " , You will be notified when white performs a move";
				} else {
					header = "Your Challenge accepted by "
							+ manager.find(ChessUser.class, game.getWhite())
									.getUserName();
					board = getTxtChess(game.reCreateBoard(),manager.find(ChessUser.class, destinationMobileHash));
					footer = "It's Your Turn, Reply with your Move<br/><form action='"+form_link+"'><input type='hidden' name='gameId' value='"+game.getId()+"' /> Your Move <input type='text' name='txtweb-message'/><input type='submit' value='submit'/></form>";
				}
				break;
			}
			default: {
				ChessBoard chessBoard = game.reCreateBoard();
				Move lastMove = chessBoard.getMoveAt(game.getMovesCount() - 1);

				String drawMessage="draw";
				String drawString="Offer Draw";
				
				if(game.getDrawRequestedBy()!=null&&!destinationMobileHash.equals(game.getDrawRequestedBy()))
				{
					drawMessage="cancel";
					drawString="Accept Draw";
				}
				
				header = (game.getCurrentPlayer().equals(destinationMobileHash) ? "Your Opponent performed "
						: "You made a move ")
						+ lastMove.getName()
						+ " ( "
						+ lastMove.getSAN(chessBoard) + " )";
				board = getTxtChess(game.reCreateBoard(),manager.find(ChessUser.class, destinationMobileHash));
				footer = chessBoard.getCurrentPlayerColor() == CoinColor.WHITE ? ("You will be notified when white performs a move")
						: ("It's Your Turn, Reply with your Move<br/><form action='"+form_link+"'><input type='hidden' name='gameId' value='"+game.getId()+"' /> Your Move <input type='text' name='txtweb-message'/><input type='submit' value='submit'/></form>");
				footer=footer+"<br/>"+"<a href='/moveServlet?gameId="+game.getId()+"&txtweb-message="+drawMessage+"'>"+drawString+"</a><br/><a href='/moveServlet?gameId="+game.getId()+"&txtweb-message=resign'>Resign or Abort</a>";
				break;
			}
			}
			TxtWebApiUtil.pushMessage(destinationMobileHash, createMoveNotificationMessage(header , board , footer));
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		return true;
	}